Sponsor |
---|
Development of this ZenPack is sponsored by: Nova Networks |
Submitted by:
Ryan Matte, Kevin Brebanov
*** NOTICE *** |
---|
If you are upgrading from an older version of the pack I recommend removing it and then reinstalling it as I've made significant changes to the template which don't appear to merge well when upgrading. In the case of this Advanced ZenPack, move all of your Windows devices out of the processor organizers to /Server/Windows so that they don't get deleted when the pack is removed. After removing and reinstalling the pack simply move the devices back in to their respective organizers. |
This ZenPack allows you to monitor performance data (CPU and Memory) of Windows hosts running the standard SNMP Service without needing snmp-informant installed. This ZenPack is still under development but is functional.
This ZenPack adds organizers to /Server/Windows as follows:
/Server/Windows/2 Processors
/Server/Windows/4 Processors
/Server/Windows/8 Processors
/Server/Windows/16 Processors
Each one has a template that monitors a certain number of processors. New templates may be created if you need more than 16 processors, though the defaults should be ideal in most cases.
snmpwalk -v1 -c <snmp string> <host> hrProcessorLoad
Navigate to /Events/Perf/Memory and select More -> Transform from the menu. Insert the following transform and save:
import re
if re.search('threshold of Memory', evt.summary):
dev = dmd.Devices.findDevice(evt.ipAddress)
if dev.getRRDValue('MemoryUsed') and dev.getRRDValue('MemoryTotal'):
percentUsed = round(dev.getRRDValue('MemoryUsed') * 100 / dev.getRRDValue('MemoryTotal'))
if re.search('threshold of Memory exceeded', evt.summary):
status = 'exceeded'
if re.search('threshold of Memory restored', evt.summary):
status = 'restored'
evt.summary = "threshold of Memory %s: current value %3.1f" % (status,percentUsed)
evt.message = "threshold of Memory %s: current value %3.1f" % (status,percentUsed)
import re
if re.search('threshold of Paging', evt.summary):
dev = dmd.Devices.findDevice(evt.ipAddress)
if dev.getRRDValue('PagingUsed') and dev.getRRDValue('PagingTotal'):
percentUsed = round(dev.getRRDValue('PagingUsed') * 100 / dev.getRRDValue('PagingTotal'))
if re.search('threshold of Paging exceeded', evt.summary):
status = 'exceeded'
if re.search('threshold of Paging restored', evt.summary):
status = 'restored'
evt.summary = "threshold of Paging %s: current value %3.1f" % (status,percentUsed)
evt.message = "threshold of Paging %s: current value %3.1f" % (status,percentUsed)
Screenshots:
REQUIREMENTS:
Zenoss Version: 2.3 (py2.4 file), 3.0 (py2.6 file), 4.2 (py2.7 file)
ZenPack Dependencies:
External Dependencies: snmpwalk needs to be installed for this pack to work
Installation:
Source:
Tagged Releases:
- http://zenpacks.zenoss.org/trac-zenpacks/browser/tags/winsnmpperf-1.1
- http://zenpacks.zenoss.org/trac-zenpacks/browser/tags/winsnmpperf-advanced-1.2
- http://zenpacks.zenoss.org/trac-zenpacks/browser/tags/winsnmpperf-advanced-1.6
- 1.2 release renamed to Advanced to differentiate it from the Windows SNMP Performance Monitor (Simple)
- 1.6 change set 628
- 1.7 improved performance, added monitoring of paging space and number of running processes
Trac tickets: http://zenpacks.zenoss.org/trac-zenpacks/report/1
Known issues: