Here are instructions to setup a Windows Power shell data collector to monitoring the status of any windows service.
- In your Dotcom-Monitor Account, set up a MetricsView Custom Collector:
- Setup a custom collector task. You must fill out the host category instance and counter fields, but it doesn’t matter what they are, they are not used for this. The Aggregation type for the Task must be set to MIN or MAX. The service status can be in 7 states. By default they are transformed into values:
Service is stopped – default 1000
Service is starting – default 2000
Service is stopping – default 3000
Service is running – default 4000
Service is resuming work after pause – default 5000
Service is pausing – default 6000
Service is paused – default 7000
We recommend using Min, so you can set your Min threshold to Anything less than 2000 to will detect “service is Stopped”.
- Click here to download the script.
- Open Powershell as administrator
- Navigate to the directory where ServiceMonitoring.ps1 is: (for example, I created a folder in the c: drive) cd c:\ps\
- Run the command set-executionpolicy unrestricted
- run the command .\ServiceMonitoring.ps1 -collector <Collector ID>-task <Task UID> -service <Service name> -log
- the collector ID is found under Configure MetricsView Collectors.
- The task ID is found when editing the task
- Service Name is spelled exactly as it shows up in the services window.
- If you don’t put in a valid task ID you will got an error.
- With the –log command you can verify the script was working correctly in the event viewer:
- Set up the script to run periodically through Windows Task Scheduler or any other tool you use to run scripts.
Additional Information about the Script.
To get built-in help execute .\ServiceMonitoring.ps1
-log key enables logging to EventLog “Windows Logs/Application”. By default the logging is done to console only.
The service status can be in 7 states. By default they are transformed into values:
- Service is stopped – default 1000
- Service is starting – default 2000
- Service is stopping – default 3000
- Service is running – default 4000
- Service is resuming work after pause – default 5000
- Service is pausing – default 6000
- Service is paused – default 7000
These values can be set to any other values using command-line keys: