After DooCPU Monitor is installed and HS is restarted, DooCPU Monitor
creates 5 plug-in devices within HomeSeer
System CPU Usage
System Available Memory
HomeSeer CPU Usage
HomeSeer Memory Usage
HomeSeer Thread Count
Each of the device strings of these devices contains both a graphical image representing the last 15 minutes worth of data and a value representing the average of the 15 minutes of data.
DooCPU Monitor also has scripting commands available:
Public Function Version() As String
Public Function AverageSystemCPU(Optional ByVal duration As Integer = 300) As Single
Public Function SystemAvailableMemory() As Integer
Public Function AverageHomeSeerCPU(Optional ByVal duration As Integer = 300) As Single
Public Function HomeSeerMemoryUsed() As Integer
Public Function HomeSeerThreadCount() As Integer
The memory and thread count command return the current value in case you wish to develop your own reporting mechanism using scripts.
The memory commands return the result in MB.
The CPU functions are averages since CPU levels tend to fluctuate quite a bit. The duration used for the CPU averages is in seconds.
As an example for VBScript ...
Set CPU = hs.plugin("DooCPU Monitor")
hs.WriteLog "Info", "Average System CPU level in last 5 minutes was " & FormatPercent(CPU.AverageSystemCPU/100,1)
Note that DooCPU Monitor only stores the last 900 seconds (15 minutes) of CPU usage.
HomeSeer memory, CPU, and thread counts
are sums of the values for both HomeSeer.exe, local Speaker.exe instances, and all plug-in instances.
If the DooCPU Monitor Plug-In for HomeSeer 2.1 is unable to locate specific performance monitoring
categories (e.g., "Processor" or "Memory"), then it is likely that your system has/had virtual memory
disabled or some other application corrupted the categories.
Microsoft recommends the following procedure to correct the issue:
Verify that the Processor performance object is enabled.
a. Download and install the Extensible Performance Counter List tool (Exctrlst.exe).
You can download Exctrlst.exe at "Exctrlst.exe: Extensible Performance Counter List"
(http://go.microsoft.com/fwlink/?LinkId=34436).
Open Exctrlst.exe, click Sort Order, and then click Service.
c. Locate the service for which the performance object reports and verify that the
Performance Counters Enabled check box is selected.
If the Performance Counters Enabled check box is not selected, select this check box,
and then restart the service that is associated with the performance counters to
verify that performance counters are operational. If the performance counters are
not operational, or if the Performance Counters Enabled check box was already
selected, continue to step 2.
2. Rebuild the missing or corrupted performance counters as specified in the
Microsoft Knowledge Base article 300956, "How to manually rebuild Performance
Counter Library values" (http://go.microsoft.com/fwlink/?LinkId=3052&kbid=300956).
See https://www.microsoft.com/technet/prodtechnol/exchange/Analyzer/0c215fbf-39ff-4828-84c6-323938baea06.mspx?mfr=true
for more information.
Revision History
2.4.0 - December 3, 2009
New version to remove a deprecated device property for HS 2.4.
2.3.0 - January 2, 2009
Official version for HS 2.3+.
2.1.31 - November 29, 2008
Installer will now recognize HomeSeer Version 2.3 or greater.
2.1.30 - April 22, 2008
Fixed errors resulting from Speaker application being closed.
Still yet another attempt to correct out of range Index error.
2.1.29 - January 20, 2008
Yet another attempt to correct out of range Index error.
2.1.28 - January 5, 2008
Fixed out of range Index error.
2.1.26 - September 14, 2007
Fixed shutdown error that referred to thread being aborted.
2.1.23
Fixed missing DooCPU Monitor event Action. Event Action is named "Restart HomeSeer".
2.1.21
Fixed potential argument out-of-range issues.
2.1.20
Fixed CheckTrigger error occurring with DooCPU Monitor Thread Count trigger.
2.1.18
Fixed some errors reported during HS shutdown. All script commands for memory now return result in MB.
2.1.17
Fixed problem with reported value of system memory available as well as underreporting of performance data for any installed plug-ins. Attempted to fix intermittent "Set Device" errors.
2.1.16
Fixed potential problem causing device strings to not be updated.
2.1.15
Fixed problem with low System Available Memory and Average HomeSeer CPU triggers.
2.1.13
Added restart HomeSeer event action that can be used in combination with high average CPU trigger or any other HomeSeer event trigger.
Updated readme file (this document) to include Troubleshooting section for systems wthat are not set up properly
for system performance to be monitored by the plug-in.
2.1.12
Added improved error reporting for performance data categories that appear to be missing on some user systems.
2.1.11
EXE plug-ins and, for HS2, local Speaker application instances are included in CPU/memory statistics.
2.1.10
The last change time for plug-in devices now reflects the time the display information (device string) is updated.
2.1.8
Plug-in requires system with NTFS drive using a paging file. Installer will now check for existence of a paging file.
2.1.7
Fixed problem with images not displaying from remote locations.
2.1.4
Device strings now contain a graph representing last 15 minutes of data.
2.1.3
Fixed problem with running HS2 as service.
2.1.2 - Fixed issues with timers starting and not updating plug-in devices.
2.1.1
Fixed some functions errors and installer will now remove older .ocx plug-in version.
2.1.0
Converted 2.0 version to .NET 2 plug-in for HomeSeer 2.1. Plug-in will not be compatible with earlier HomeSeer versions.
Added event triggers for Average System CPU, Average HomeSeer CPU,
Available System Memory, HomeSeer Memory Used, and HomeSeer thread count.
DooSoft Software Solutions for Your Home Automation Efforts