Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by imurphy

  1. imurphy

    Labtech on a Pi

    Have you tried labtech with windows IOT on PI? The windows license is free in so far as I know. Anything .net should just work.
  2. If you want to run it just once then just open a machine and run the script. In CC you can just click in the corner and type the name of the script. If you want to run it periodically on a machine or group of machines then the easiest way is to create a group, open the group properties (double click the group), go to the computers tab, scheduled script tab. There you can select the script and the schedule you need. The script will only run on the machines in that group. You can either add machines to the group using a search definition or by manually right-clicking on a node and selecting 'send to'>group
  3. If you have outlook 2016 licenses and an outlook installation kit, then of course you can do this. However as far as I know, such a thing does not exist. I've only ever seen Outlook come with a basic Office license, so you get Office 2016, outlook word, excel, etc all in one license. So your problem is really just how to push out office 2016. This is standard stuff but depends on your license. If you have M365 then you can just pull down the installation kit, use the admin tool to generate an options file and run setup with that options file as a param. I have a script which does this, but its specific to a client and requires an office build be available in a file share. You *can* choose to only install Outlook 2016 in the options file... but why? I have had cases in the distant past where we did *not* want to install the latest Access and so in the options we excluded Access and other stuff.
  4. Try the following: Open the All Agents group. Go to the Computers > Remote monitors tab. Click on Add to create a monitor. Select Monitor results of an exe. In its parameters put the usual "%windir%\System32\WindowsPowerShell\v1.0\powershell.exe" -noprofile -command followed by something like "(Get-ChildItem -Path c:\ -Filter lterrors.txt -Recurse -ErrorAction SilentlyContinue -Force| measure-object).count" Follow through the wizard and set the comparison value to 0. The PS command above will return 0 or some other number if it finds a copy of lterrors.txt on the C disk. Obviously change the path and filename to suit. Click through the wizard and choose the execution frequency, etc. Give it a few hours to propagate. Make sure you give is an easily identifiable name, like "pacxa-Does File xxx.yyy exist on C" You can now open the list of monitors, filter on that monitor name and then filter on sucess or failure. If you need to check all disks, then you would need to make a slightly more complicated PS command, but it wouldn't be too difficult.
  5. I'd run an agent-remove-script on all their systems for a week or two. Move all the systems for that client to a single branch Create a temp group, add all nodes in that branch to the group manually Assign a script to the group which runs every 5 minutes and just contains a single line to uninstall the agent. This way, if anything does manage to try and connect, it will will automatically uninstall itself. After a week, just select the nodes in blocks and retire them using CC.
  6. The 8Gb in use by mysql looks to be your problem. We only have 500 agents and mysqld is using over 9Gb of memory. Logic would imply you should be seeing something more along the lines of 25Gb in use by mysql alone. I can't supply you settings for your number of agents but there are a fair number of postings in this forum on sizing mysql, with examples. I'd recommend starting with a default my.ini, apply the changes recommended in the CW docs and then apply the changes people recommend for similarly sized installs. One change at a time so you can roll back. I've attached my my.ini, which you should not use as-is, but it should show you which settings need to be modified. The slack channel is a good place to go to get advice as well. Pretty much everyone makes the investment in ssd disks for the db disks as least. Its worth it. There are people on here with 20k+ agents... so it does work, its just a matter of getting the tuning right. my.ini
  7. Theres already a monitor for this. From CC open All Monitors > Remote Agent Monitors > Filter on %rdp% you should have a load of monitors auto-created with a name of 'TCP - RDP Port 3389'
  8. You could monitor it from the outside, from your systems or from the systems of a client. Just create a ping monitor for each of the public IPs. or, you could use snmp from a probe on the clients installations which queried the pfsense, but I don't know if pfsense support snmp info to indicate if an interface is considered up or down. or, if the pfsense doesn't support that sort of thing, you could define routes on the pfsense to route a particular IP out over just one of the links. If each of the IPs was for a router in the ISPs network, then pinging IP1 would indicate that DSL1 was working and pining IP2 would indicate that DSL2 was working. I am assuming you can do this in the routing tables of the pfsense. This way a ping monitor on a probe could be used. or, if the pfsense can generate syslogs which correspond to interface down or route down (they're different obviously) then you can point those syslogs at the probe and use those to generate alerts. Never tried that, but in the end, they just go into a table in mysql.
  9. Date handling is always going to be a complex task. Are you dealing with a multi time zone installation? Are you intending to compare times across zones? If you are facing anything complex then it may be better to generate numeric values based against some fixed date in the past, like seconds-since-1/1/2000 and using UTC as a base, you could then store that as an int in an EDF. You can then use a powershell function or a mysql function to convert back to a date and to then calculate differences. If you want to just keep it simple, then remember that EDFs are text, so you will want to force the format of all dates and times to a fixed format (yyyy-mm-dd hh:mm:ss highly recommended) when outputting from Powershell and mysql queries and then converting back to internal dates when reading them back into mysql/powershell. This way you will avoid the date-back-to-front issue when dealing with using the default date formatting. This method doesn't handle multiple time zones, but you could by converting all times to GMT/UTC.
  10. Dataviews > Inventory > Printers To know which are local, just filter on port. USB% should catch those but, who knows, you may have serial port or parallel port printers still out there.
  11. Try taking a look at how to run a script on a logged in users console. You will need to launch the above script every time a new user logs into a PC as windows will add applications those newly logged in users.
  12. I'd go 11-> 12 and then 12 ->2020 but it should be simple enough. If you have a vm rather than a physical server, you can test the update on a copy, or do a snapshot and then upgrade so you can always roll back.
  13. When you say maintenance, do you mean run scripts? If this is the case just schedule them to run on the agent using 'advanced settings' > unmark 'skip offline agents'. If you mean that you want to know when a box switches on so you can connect to the screen, then you can write a one line script which sends a mail to your account with the text '%computername% has powered on'. Schedule that script to run using the above unmarked 'skip offline agents'. You could get even more clever and write a generic script to be used by anyone and which sent a mail to the person who scheduled the script. Look at some of Darren Whites scripts. In fact his Send email script does just this. Also, is wake on lan not available?
  14. Disk space alerting generates emails by default, so no need to go configuring. Same for quite a few other urgent issues. You can modify/create similar funcionality by creating a monitor and applying it to a group and then marking it to alert byt generating emails. From Control Center desktop, open Browse > groups > Services Plans > Windows Servers > Double click on "Managed 8x5" Open Computers tab > Remote Monitors tab The list of monitors it shows only applies to servers with an 8x5 maintenance plan. Click on one like 'Perf - Available MBytes' then click on the Details button at the top. This will display the details of what is being monitored. Beside that on the right there is a dropdown for the 'alert template'. This is how an email would be generated. You can use the canned alert templates or generate your own.
  15. imurphy

    Script Issue

    The way mike said to do it is the way to go. Running a monolithic script again and again on boxes which may or may not have the software already installed and which may or may not already be updated makes no sense. Write one script which installs what you need and only run the script on machines which need it...
  16. Better still, do it the Automate way. Rather than detecting the manufacturer in the script, only run the script on Dell machines. As an example, to push Dell support assist: Create a search called something like Just-Dell-Workstations. Create a group called something like Just-Dell-Workstations. Populated the group with Just-Dell-Workstations search and limit it to that search Create another search which is Machines-Missing-SupportAssist which selects only machines which do *not* have Support Assist installed Create a script called Install-Dell-Support-assist In the Just-Dell-Workstations group configuration > computers > scheduled scripts add a line to execute the Install-Dell-Support-Assist, but limit it to Machines-Missing-SupportAssist The above will run the Install-Dell-Support-Assist script on only Dell workstations which do not have Support Assist already installed No need to add checks in your script.
  17. Well, none of those things is going to work because its simply buggy. Its been buggy for years. It suffers memory leaks and probably other issues. The memory leak is very obvious. A couple of years back I supplied all the info to show that the console crashing issue was definitely a memory leak bug. All you had to do was to use the console for a couple of days and it was guaranteed to crash. The tests in which I managed to reproduceably crash it consisted in nothing more than opening and closing Computer View windows. Around 20 was enough. They tried to blame everything. Configuration, plugins, AV, whatever. I excluded all of these and I was able to finally get them to accept it was a bug. The next release they rushed out a fix for the problem. You now have me to thank for the fact that the desktop client automatically shuts down after a period of time. That was it. No other fixes applied. Nothing touched since then. It still crashes after nothing more than opening windows and closing them.Computer view especially so. Ian
  18. Try the following. Shell as admin: copy <source file> <dest file> >> c:\temp\cpy.log 2>>c:\temp\cpyerr.log it should write two logs to c:\temp (make sure c:\temp exists on the box you are testing on). The cpyerr.log should contain the text of the error which is occurring. Its almost certainly access denied. Ian
  19. Darren White wrote a monitor to do just this. Works like a dream. I've just been searching on mspgeek and I can't find it. It may be better to just ask Darren on the slack channel.
  20. Why not just disable patching? You could just manually run a script on they whole client once a month on a pre arranged day and have the script launch patching. Ok you are adding a manual process here but given the preciseness of the days they do not want to patch it may be easier. Alternately just set them to patch and not reboot. Occasionally it causes problems but if you make sure everything gets rebooted regularly it should be just transparent that they have patched..... apart from the win10 feature updates.
  21. Its likely because chrome has been installed under the users profile. When you execute the above command it executes under system and so doesn't find any installed application called chrome. Try adding a few lines to execute the same command on the users console when they are logged on.
  22. Any reason why you can't execute a console command which consists of powershell.exe -command "myscript.ps1"
  23. imurphy

    Identify version

    You will find that doing this differently will make your life much easier. Your existing script installs a version of software - good. Rather than building a ton a logic into your script, try the following: [optional] Create a search which returns all machines with VPNClient installed - call it VPNClient-installed or something like this Create a search which returns all machines with vpnclient installed and version<>1.3 - call it VPNClient out of date [optional] Create a search for all machines which do *not* have VPNClient installed and call it - VPNclient not installed Create a search for the machines which *should* have the vpn client installed - lets says a search where clientname ='abc' or clientname='def' Create a group, set the group autojoin to the above search for machines which *should* have the vpn client installed Open the group and on computers>scheduled scripts add a scheduled script Select your original script to install the vpn client but on the 'apply to' drop down, select the search we created above 'VPNClient out of date' Add another scheduled script, select the same script you wrote above, on the 'apply to' drop down select the 'VPNClient not installed what you are doing is selecting a group of machines which *should* have the client installed, then running the install script on, and this is important, just the subset of machines in this group which have the vpnclient out of date. Rather than creating one monster script with a ton of checks for different cases, its easier to create one simple installer and let Automate do the selection work and only run the scripts on the boxes that need it.
  24. Simpy put, Mysql is an abysmally unstable product. It requires you to manually configure a load of memory management settings which, if any are too low, it simply crashes. The error messages are rarely in any way linkable to the resource shortage and there is rarely/never any warning that a given resource is running low. There are a thousand tuning guides out there - many say you should never have value X below/above a multiple of value Y - but they often conflict with each other. We had a similar problem a couple of years back. Mysql would just crash again and again. Support got involved after I gave up. They evenually wiped everything, mysql, labtech, the lot and reinstalled everything from scratch and then reestimated the my.ini settings. It still crashed again but after another tweek its been stable ever since. The best way is to get on the slack channel, find someone with a similarly sized installation and get a copy of their my.ini Ian
  25. What you're asking for is kind of a ton of work - export out the per-group monitor configuration for all groups. There are dozens. What you need to do is just pick any alerts you are not interested in and disable/remove them. The biggest ones always used to be the hardware sensors. Theres a script you can run against all nodes which will simply delete those monitors. Search for 'sensor' in scripts. If you then find that something is generating tickets you aren't interested in (perfmon response time alerts for example) then hunt down that monitor and just disable on the branch which you are not interested in monitoring.
  • Create New...