Package ZenRRD :: Module zenperfsnmp :: Class zenperfsnmp
[hide private]
[frames] | no frames]

Class zenperfsnmp

source code

  Products.ZenUtils.CmdBase.CmdBase --+                
                                      |                
  Products.ZenUtils.ZenDaemon.ZenDaemon --+            
                                          |            
 twisted.spread.jelly.Jellyable --+       |            
                                  |       |            
twisted.spread.flavors.Serializable --+   |            
                                      |   |            
   twisted.spread.flavors.Referenceable --+            
                                          |            
          Products.ZenHub.PBDaemon.PBDaemon --+        
                                              |        
                            RRDDaemon.RRDDaemon --+    
                                                  |    
                              SnmpDaemon.SnmpDaemon --+
                                                      |
                                                     zenperfsnmp

Periodically query all devices for SNMP values to archive in RRD files

Instance Methods [hide private]
 
__init__(self) source code
 
pickleName(self, id) source code
 
loadConfigs(self, perfRoot)
Read local configuration values at startup
source code
 
cleanup(self, fullPath) source code
 
maybeQuit(self)
Stop if all performance has been fetched, and we aren't cycling
source code
 
remote_updateDeviceList(self, devices) source code
 
startUpdateConfig(self, driver)
Periodically ask the Zope server for basic configuration data.
source code
 
updateDeviceList(self, responses, requested)
Update the config for devices devices
source code
 
updateAgentProxy(self, deviceName, ip, port, community, version, timeout, tries, maxoids=40)
create or update proxy
source code
 
updateSnmpStatus(self, status)
Update the Snmp failure counts from Status database
source code
 
remote_deleteDevice(self, doomed) source code
 
remote_updateDeviceConfig(self, snmpTargets) source code
 
updateDeviceConfig(self, snmpTargets)
Save the device configuration and create an SNMP proxy to talk to it
source code
 
scanCycle(self, *unused) source code
 
setUnresponsiveDevices(self, arg)
remember all the unresponsive devices
source code
 
readDevices(self, unused=None)
Periodically fetch the performance values from all known devices
source code
 
reportRate(self, *unused)
Finished reading all the devices, report stats and maybe stop
source code
 
startReadDevice(self, deviceName)
Initiate a request (or several) to read the performance data from a device
source code
 
badOid(self, deviceName, oid) source code
 
storeValues(self, updates, deviceName)
decode responses from devices and store the elements in RRD files
source code
 
storeRRD(self, device, oid, value)
store a value into an RRD file
source code
 
connected(self)
Run forever, fetching and storing
source code

Inherited from SnmpDaemon.SnmpDaemon: setPropertyItems

Inherited from RRDDaemon.RRDDaemon: buildOptions, error, errorStop, getDevicePingIssues, heartbeat, logError, model, remote_setPropertyItems, remote_updateThresholdClasses, sendThresholdEvent

Inherited from Products.ZenHub.PBDaemon.PBDaemon: connect, eventService, getInitialServices, getService, getServiceNow, gotPerspective, remote_getName, remote_shutdown, run, sendEvent, sigTerm, stop

Inherited from Products.ZenUtils.ZenDaemon.ZenDaemon: becomeDaemon, changeUser, setupLogging

Inherited from Products.ZenUtils.CmdBase.CmdBase: buildParser, generate_configs, generate_xml_table, parseOptions, pretty_print_config_comment

Inherited from twisted.spread.flavors.Referenceable: jellyFor, remoteMessageReceived

Inherited from twisted.spread.flavors.Serializable: processUniqueID

Inherited from twisted.spread.jelly.Jellyable: __providedBy__, getStateFor

Class Variables [hide private]
  maxRrdFileAge = 2592000
  perfsnmpConfigInterval = 1200
  perfsnmpCycleInterval = 300
  properties = ('configCycleInterval', 'snmpCycleInterval', 'per...
  initialServices = ['EventService', 'SnmpPerfConfig']

Inherited from SnmpDaemon.SnmpDaemon: heartBeatTimeout, snmpCycleInterval

Inherited from RRDDaemon.RRDDaemon: configCycleInterval, heartbeatevt, rrd, shutdown, thresholds

Inherited from Products.ZenHub.PBDaemon.PBDaemon: name

Inherited from Products.ZenUtils.ZenDaemon.ZenDaemon: pidfile

Inherited from Products.ZenUtils.CmdBase.CmdBase: doesLogging

Inherited from twisted.spread.flavors.Referenceable: __implemented__, __provides__, perspective

Method Details [hide private]

__init__(self)
(Constructor)

source code 
Overrides: SnmpDaemon.SnmpDaemon.__init__

remote_updateDeviceList(self, devices)

source code 
Overrides: RRDDaemon.RRDDaemon.remote_updateDeviceList

connected(self)

source code 
Run forever, fetching and storing
Overrides: Products.ZenHub.PBDaemon.PBDaemon.connected

Class Variable Details [hide private]

properties

Value:
('configCycleInterval', 'snmpCycleInterval', 'perfsnmpCycleInterval')