Package Products :: Package ZenStatus :: Module TracerouteTask :: Class TracerouteTask
[hide private]
[frames] | no frames]

Class TracerouteTask

source code

                         object --+    
                                  |    
ZenUtils.observable.ObservableMixin --+
                                      |
                                     TracerouteTask

Instance Methods [hide private]
 
__init__(self, taskName, configId=None, scheduleIntervalSeconds=60, taskConfig=None) source code
 
_failure(self, reason)
Twisted errBack to log the exception for a single device.
source code
Twisted deferred object
doTask(self)
Traceroute from the collector to the endpoint nodes, with chunking.
source code
 
_chooseDevicesToTrace(self)
Select the devices to traceroute
source code
 
_reTraceDevices(self, chunkSize)
Re-traceroute devices based on reasonable criteria.
source code
deferred task
_modelRoute(self, ip)
Given an IP address, perform a traceroute to determine (from the physical network devices) the underlying route to the IP from this collector device.
source code
 
_parseResults(self, resultList)
Take the raw results of the traceroute requests and format for updates to the topology.
source code
 
_parseResult(self, command) source code
 
_updateStatistics(self, command)
Track our traceroute statistics
source code
 
_processResults(self, resultList)
Given the list of gateways, add any nodes and construct any edges required to add the device to the topology.
source code
 
displayStatistics(self)
Called by the collector framework scheduler, and allows us to see how each task is doing.
source code
 
cleanup(self) source code

Inherited from ZenUtils.observable.ObservableMixin: __setattr__, attachAttributeObserver, detachAttributeObserver, notifyAttributeChange

Class Variables [hide private]
  STATE_TOPOLOGY_COLLECTION = 'TOPOLOGY_COLLECTION'
  STATE_TOPOLOGY_PROCESS = 'TOPOLOGY_PROCESS_RESULTS'
  STATE_TOPOLOGY_UPDATE = 'TOPOLOGY_UPDATE'
Method Details [hide private]

__init__(self, taskName, configId=None, scheduleIntervalSeconds=60, taskConfig=None)
(Constructor)

source code 
Parameters:
  • deviceId (string) - the Zenoss deviceId to watch
  • taskName (string) - the unique identifier for this task
  • scheduleIntervalSeconds (int) - the interval at which this task will be collected
  • taskConfig - the configuration for this task
Overrides: ZenUtils.observable.ObservableMixin.__init__

_failure(self, reason)

source code 

Twisted errBack to log the exception for a single device.

Parameters:
  • reason (Twisted error instance) - explanation of the failure

doTask(self)

source code 

Traceroute from the collector to the endpoint nodes, with chunking.

Returns: Twisted deferred object
A task to traceroute devices

_modelRoute(self, ip)

source code 

Given an IP address, perform a traceroute to determine (from the physical network devices) the underlying route to the IP from this collector device.

Parameters:
  • ip (string) - IP address of the device to search
Returns: deferred task
a deferred to actually do the modeling

_parseResults(self, resultList)

source code 

Take the raw results of the traceroute requests and format for updates to the topology. Note that just because a device cannot be traceroute'd does *NOT* mean that it is down.