Remote computer monitoring

Tags: protomon, monitoring April 18, 2011

ProtoMon can perform the remote computer monitoring using the agent-based method. This means that you will need to install a special system service to every PC you wish to monitor. ProtoMon Agent is totally free. You can install it to any number of computers you need, and control them all using a single instance of ProtoMon.

To start monitoring your remote computer, click the File -> Add Monitor -> Add Agent Monitor menu item. Switch to the Agent tab to configure the access to ProtoMon Agent on the remote PC, and to specify the system parameters you wish to monitor.

Remote computer monitoring

First off all, enter the host name or IP address of the remote computer with the installed agent service to the Host field. Then specify the monitoring options.

ProtoMon can check any number of system parameters simultaneously using a single query. It sends so-called Success Criteria to the remote agent service. The agent service checks if the system status satisfies this criteria and returns the result to ProtoMon.

Success Criteria is a boolean expression. It consists of one or more inequations with macroes joined together by the logical operators (and, or, not). Each macros represents one system parameter. For example: average CPU usage, total RAM size, system service status, etc.

Use the Insert Macros button to see the full list of the available macroes and to quickly insert them to the success criteria field. Here is some of macroes:

CPU
  • CPU[NumberOfProcessors] - number of processors on the remote computer
  • CPU[CurLoad] - current CPU load
  • CPU[AvgLoad] - average CPU load since the previous monitor check
  • CPU[MaxLoad] - maximum CPU load since the previous monitor check
Memory
  • Memory[Total] - total RAM size in bytes
  • Memory[Avail] - available RAM size in bytes
  • Memory[TotalPageFile] - total PageFile size in bytes
  • Memory[AvailPageFile] - available PageFile size in bytes
  • Memory[TotalVirtual] - total Virtual size in bytes
  • Memory[AvailVirtual] - available Virtual size in bytes
All size-related macroes have the additional modifications with the Kb, Mb and Gb postfixes. For example Memory[TotalGb] returns the total RAM size in Gigabytes.

Disk
  • Disk["<DiskLetter>"] - returns true if disk exists
  • Disk["<DiskLetter>", Type] - disk type (Fixed, CDROM, Removable)
  • Disk["<DiskLetter>", GUID] - disk globally unique identifier
  • Disk["<DiskLetter>", Total] - total disk size in bytes
  • Disk["<DiskLetter>", Avail] - free disk size in bytes
Operation System
  • OS[Platform] - platform (2000, XP, 2003 Server, Vista, 7)
  • OS[MajorVersion] - major version number
  • OS[MinorVersion] - minor version number
  • OS[BuildNumber] - build number
  • OS[CSD] - service pack
Files
  • File["<FileName>"] - returns true if file exists
  • File["<FileName>", Size] - file size in bytes
  • File["<FileName>", Date] - file date (yyyy-mm-dd)
  • File["<FileName>", Time] - file time (hh:nn:ss)
  • File["<FileName>", DateTime] - file date and time (yyyy-mm-dd hh:nn:ss)
Processes
  • Process["<Name>"] - returns true if the process is running
  • Process["<Name>", CurLoad] - current CPU usage
  • Process["<Name>", AvgLoad] - average CPU usage since the previous check
  • Process["<Name>", MaxLoad] - maximum CPU usage since the previous check
  • Process["<Name>", Memory] - RAM usage in bytes
  • Process["<Name>", MemoryPeak] - peak RAM usage in bytes
  • Process["<Name>", PageFile] - PageFile usage in bytes
  • Process["<Name>", PageFilePeak] - peak PageFile usage in bytes
Other
  • Registry["<Path>"] - string or integer value of the registry key
  • Service["<Name>"] - service status (Running, Stopped, etc.)

Monitor check succeeds when Success Criteria evaluates to true. Otherwise it fails. For example, with this success criteria
  CPU[MaxLoad] <= 60 AND Disk["C", AvailMb] >= 100 AND Memory[AvailMb] >= 200
monitor check will fail, if maximum CPU load since the previous check was greater than 60%, or there is less than 100Mb of free space on disk C, or there is less than 200Mb of free RAM.