def task(self, netdev, sessions): print('@task(%d):started...' % self.instance) ses = SnmpSession(netdev) if self.restrict: data = dict(name=netdev.name, ifOperStatus=ses.get_if_status()) gevent.sleep(0) else: ses.scan_device() gevent.sleep(0) data = ses.get_data() if data['name'] != '__no_resp__': sessions.put_nowait({data['name']: { 'name': netdev.name, 'snmp': data, 'flow_export_source_ip': netdev.get_flow_export_source_ip(), }, }) print('@task(%d):%s done!' % (self.instance, data['name']))