def main(): preferences = Preferences() task_factory = SimpleTaskFactory(PythonCollectionTask) task_splitter = PerDataSourceInstanceTaskSplitter(task_factory) daemon = CollectorDaemon(preferences, task_splitter) pool_size = preferences.options.threadPoolSize # The Twisted version shipped with Zenoss 4.1 doesn't have this. if hasattr(reactor, 'suggestThreadPoolSize'): reactor.suggestThreadPoolSize(pool_size) daemon.run()
def run(self): if "--worker" in sys.argv: executor = zope.component.getUtility(IWorkerExecutor) executor.setWorkerClass(self.workerClass) executor.run() else: myPreferences = self.prefsClass() myTaskFactory = zope.component.getUtility(IWorkerTaskFactory) myTaskFactory.setWorkerClass(self.workerClass) myTaskSplitter = SimpleTaskSplitter(myTaskFactory) daemon = CollectorDaemon(myPreferences, myTaskSplitter) myTaskFactory.postInitialization() self.log = daemon.log daemon.run()
def cleanup(self): pass def doTask(self): log.debug("Scanning device %s [%s]", self._devId, self._manageIp) # try collecting events after a successful connect, or if we're # already connected d = self._collectData() # Add the _finished callback to be called in both success and error # scenarios. While we don't need final error processing in this task, # it is good practice to catch any final errors for diagnostic purposes. d.addCallback(self._finished) # returning a Deferred will keep the framework from assuming the task # is done until the Deferred actually completes return d # # Collector Daemon Main entry point # if __name__ == '__main__': myPreferences = ZenPerfWmiPreferences() myTaskFactory = SimpleTaskFactory(ZenPerfWmiTask) myTaskSplitter = SimpleTaskSplitter(myTaskFactory) daemon = CollectorDaemon(myPreferences, myTaskSplitter) daemon.run()
self._snmpProxy = None def displayStatistics(self): """ Called by the collector framework scheduler, and allows us to see how each task is doing. """ display = "%s using SNMP %s\n" % (self.name, self._snmpConnInfo.zSnmpVer) display += "%s Cycles Exceeded: %s; V3 Error Count: %s; Stopped Task Count: %s\n" % ( self.name, self._cycleExceededCount, self._snmpV3ErrorCount, self._stoppedTaskCount) display += "%s OIDs configured: %d \n" % ( self.name, len(self._oids.keys())) display += "%s Good OIDs: %d - %s\n" % ( self.name, len(self._good_oids), self._good_oids) display += "%s Bad OIDs: %d - %s\n" % ( self.name, len(self._bad_oids), self._bad_oids) if self._lastErrorMsg: display += "%s\n" % self._lastErrorMsg return display if __name__ == '__main__': myPreferences = SnmpPerformanceCollectionPreferences() myTaskFactory = SimpleTaskFactory(SnmpPerformanceCollectionTask) myTaskSplitter = SimpleTaskSplitter(myTaskFactory) daemon = CollectorDaemon(myPreferences, myTaskSplitter) daemon.run()
def main(): preferences = Preferences() task_factory = SimpleTaskFactory(PythonCollectionTask) task_splitter = PerDataSourceInstanceTaskSplitter(task_factory) daemon = CollectorDaemon(preferences, task_splitter) daemon.run()