In order to proactively maintain our workstations we need to know when systems have issues before they create a stoppage of work for users.

Team Members

Tagged MSPs

Categories

The overlying theory is that in order to accomplish proactive maintenance on workstations we need to be able to see all of the information about the systems without stopping work or relying on users to provide information. We want to have seamless fixes and no loss of productivity across the network for any fix.

In order to appropriately roll this out I've had to learn quite a bit about Powershell, WMI, and how much patience I can have( As a side note I've learned I can sit in my chair for 8 hours and not realize that any time has passed).

The first step in proactive maintenance is to pull reports. I've designed two Powershell Scripts that poll each system listed in Active Directory and pulls information.

The first script gathers all of the Warnings and Errors that have been listed in the System log over the past 24-hours. With these logs the script creates an individual worksheet on an excel workbook and writes a summary sheet for the number of errors and warnings listed for that system.

The second script gathers all of the current processes for each system and dumps it into a CSV file. I attempted to write it to act like the first script but the excel workbook ended up being too large for excel to load (150pages with 100+ entries on each). The CSV file ends up being 20 meg, but I can create a pivot table to give me the summary information. The information summarize in this script is Open Handles, Number of process, Amount of Memory used, and Largest number of Handles.

The second step in this is to search through the logs and find the outliers. Most of the warnings on our server systems are issues regarding pass-through printing when remote systems are connected and so those have to be ignored.

In the three days this project has been running so far we've found two machines that had failing harddrives, two systems that had old Domain metadata still on them, and various software issues that we've been able to resolve.The biggest concern with this project is limiting the loss of productivity to the users. Primarily everything can be done through Powershell with no need to be at the console.

The third step in this project is to fix any issues that have been found. In reality this is primarily exercising google-fu and following what others have done to resolve similar issues. 90% of the problems seem pretty common and are quick fixes and issues such as specific DNS configuration errors are fixed by simply registering DNS properly.

The final step is to continue to maintain this process. This is going to be done by automating the report pulls on one of the servers and create a send-mail rule to send those reports after they are created. The send-mail will forward the reports to the sysadmin email account so that it can be reviewed. These reports will be run daily.