def __init__(self, service, port=0, status=event.Event.UP): """ type is the name of the handler (subclass) service is a dict containing ip, sysname, netboxid, serviceid, version and extra arguments to the handler status defaults to up, but can be overridden. """ self._conf = config.serviceconf() self.setServiceid(service['id']) self.setIp(service['ip']) self.setNetboxid(service['netboxid']) self.setArgs(service['args']) self.setVersion(service['version']) self.setSysname(service['sysname']) self.setDeviceid(service['deviceid']) # This is (and should be) used by all subclasses self.setPort(int(service['args'].get('port', port))) self.setStatus(status) self.setTimestamp(0) timeout = self.getArgs().get( 'timeout', self._conf.get("%s timeout" % self.getType(), self._conf.get('timeout', TIMEOUT))) self.setTimeout(int(timeout)) self.db = db.db() debug("New checker instance for %s:%s " % (self.getSysname(), self.getType()), 6) self.runcount = 0 self.rq = RunQueue.RunQueue()
def __init__(self, service, port=0, status=event.Event.UP): """ type is the name of the handler (subclass) service is a dict containing ip, sysname, netboxid, serviceid, version and extra arguments to the handler status defaults to up, but can be overridden. """ self.response_time = None self._conf = config.serviceconf() self.serviceid = service['id'] self.ip = service['ip'] self.netboxid = service['netboxid'] self.args = service['args'] self.version = service['version'] self._sysname = service['sysname'] # This is (and should be) used by all subclasses self.port = int(service['args'].get('port', port)) self.status = status self.timestamp = 0 timeout = self.args.get( 'timeout', self._conf.get("%s timeout" % self.get_type(), self._conf.get('timeout', TIMEOUT)), ) self.timeout = int(timeout) self.db = db.db() _logger.info("New checker instance for %s:%s ", self.sysname, self.get_type()) self.runcount = 0 self.runq = RunQueue.RunQueue()
def __init__(self, service, port=0, status=event.Event.UP): """ type is the name of the handler (subclass) service is a dict containing ip, sysname, netboxid, serviceid, version and extra arguments to the handler status defaults to up, but can be overridden. """ self._conf = config.serviceconf() self.setServiceid(service['id']) self.setIp(service['ip']) self.setNetboxid(service['netboxid']) self.setArgs(service['args']) self.setVersion(service['version']) self.setSysname(service['sysname']) self.setDeviceid(service['deviceid']) # This is (and should be) used by all subclasses self.setPort(int(service['args'].get('port', port))) self.setStatus(status) self.setTimestamp(0) timeout = self.getArgs().get( 'timeout', self._conf.get("%s timeout" % self.getType(), self._conf.get('timeout', TIMEOUT))) self.setTimeout(int(timeout)) self.db = db.db() debug( "New checker instance for %s:%s " % (self.getSysname(), self.getType()), 6) self.runcount = 0 self.rq = RunQueue.RunQueue()
def test_build_host_query(self): db_instance = db() # Make groups groups_included = ["INC_GROUP_ONE", "INC_GROUP_TWO"] groups_excluded = ["EXC_GROUP_ONE", "EXC_GROUP_TWO"] # Make query string for both groups query_both_groups = """SELECT distinct(netbox.netboxid), sysname, ip, up FROM netbox LEFT JOIN netboxcategory USING (netboxid) WHERE netboxcategory.category IN %s AND (netboxcategory.category IS NULL OR netboxcategory.category NOT IN %s)""" # make query string for only included groups query_included_groups = """SELECT distinct(netbox.netboxid), sysname, ip, up FROM netbox LEFT JOIN netboxcategory USING (netboxid) WHERE netboxcategory.category IN %s""" # make query string for only excluded groups query_excluded_groups = """SELECT distinct(netbox.netboxid), sysname, ip, up FROM netbox LEFT JOIN netboxcategory USING (netboxid) WHERE (netboxcategory.category IS NULL OR netboxcategory.category NOT IN %s)""" # make query string for no groups query_no_groups = """SELECT distinct(netbox.netboxid), sysname, ip, up FROM netbox LEFT JOIN netboxcategory USING (netboxid)""" # Both Groups Checks query, params = db_instance.build_host_query( groups_included=groups_included, groups_excluded=groups_excluded) # Check if the params of the query are correct self.assertListEqual(params, [tuple(groups_included), tuple(groups_excluded)]) # Check the query string is correct self.assertEqual(query, query_both_groups) # Included Groups Checks query, params = db_instance.build_host_query( groups_included=groups_included) # Check if the params of the query are correct self.assertListEqual(params, [tuple(groups_included)]) # Check the query string is correct self.assertEqual(query, query_included_groups) # Excluded Groups Checks query, params = db_instance.build_host_query( groups_excluded=groups_excluded) # Check if the params of the query are correct self.assertListEqual(params, [tuple(groups_excluded)]) # Check the query string is correct self.assertEqual(query, query_excluded_groups) # No Groups Checks query, params = db_instance.build_host_query() # Check if the params of the query are correct self.assertListEqual(params, []) # Check the query string is correct self.assertEqual(query, query_no_groups)
def __init__(self, **kwargs): signal.signal(signal.SIGHUP, self.signalhandler) signal.signal(signal.SIGTERM, self.signalhandler) self.conf = config.serviceconf() init_generic_logging(stderr=True, read_config=True) self._deamon = kwargs.get("fork", 1) self._isrunning = 1 self._checkers = [] self._looptime = int(self.conf.get("checkinterval", 60)) LOGGER.debug("Setting checkinterval=%i", self._looptime) self.db = db.db() LOGGER.debug("Reading database config") LOGGER.debug("Setting up runqueue") self._runqueue = RunQueue.RunQueue(controller=self) self.dirty = 1
def __init__(self, **kwargs): signal.signal(signal.SIGHUP, self.signalhandler) signal.signal(signal.SIGTERM, self.signalhandler) self.conf=config.serviceconf() debug.setDebugLevel(int(self.conf.get('debuglevel', 4))) self._deamon=kwargs.get("fork", 1) self._isrunning=1 self._checkers=[] self._looptime=int(self.conf.get("checkinterval",60)) debug.debug("Setting checkinterval=%i"% self._looptime) self.db=db.db() debug.debug("Reading database config") debug.debug("Setting up runqueue") self._runqueue=RunQueue.RunQueue(controller=self) self.dirty = 1
def __init__(self, foreground=False): if not foreground: signal.signal(signal.SIGHUP, self.signalhandler) signal.signal(signal.SIGTERM, self.signalhandler) signal.signal(signal.SIGINT, self.signalhandler) self.conf = config.serviceconf() init_generic_logging(stderr=True, read_config=True) self._isrunning = 1 self._checkers = [] self._looptime = int(self.conf.get("checkinterval", 60)) _logger.debug("Setting checkinterval=%i", self._looptime) self.db = db.db() _logger.debug("Reading database config") _logger.debug("Setting up runqueue") self._runqueue = RunQueue.RunQueue(controller=self) self.dirty = 1
def __init__(self, **kwargs): signal.signal(signal.SIGHUP, self.signalhandler) signal.signal(signal.SIGTERM, self.signalhandler) self.config = config.pingconf() init_generic_logging(stderr=True, read_config=True) self._isrunning = 1 self._looptime = int(self.config.get("checkinterval", 60)) LOGGER.info("Setting checkinterval=%i", self._looptime) self.db = db.db() sock = kwargs.get("socket", None) self.pinger = megaping.MegaPing(sock) self._nrping = int(self.config.get("nrping", 3)) # To keep status... self.netboxmap = {} # hash netboxid -> netbox self.down = [] # list of netboxids down self.replies = {} # hash netboxid -> circbuf self.ipToNetboxid = {}
def __init__(self, socket=None, foreground=False): if not foreground: signal.signal(signal.SIGHUP, self.signalhandler) signal.signal(signal.SIGTERM, self.signalhandler) signal.signal(signal.SIGINT, self.signalhandler) self.config = config.pingconf() init_generic_logging(stderr=True, read_config=True) self._isrunning = 1 self._looptime = int(self.config.get("checkinterval", 60)) _logger.info("Setting checkinterval=%i", self._looptime) self.db = db.db() self.pinger = megaping.MegaPing(socket) self._nrping = int(self.config.get("nrping", 3)) # To keep status... self.netboxmap = {} # hash netboxid -> netbox self.down = [] # list of netboxids down self.replies = {} # hash netboxid -> circbuf self.ip_to_netboxid = {}
def __init__(self, **kwargs): signal.signal(signal.SIGHUP, self.signalhandler) signal.signal(signal.SIGTERM, self.signalhandler) self.config=config.pingconf() debug.setDebugLevel(int(self.config.get("debuglevel",5))) debug.debug("Setting debuglevel=%s "% self.config.get("debuglevel",5)) self._isrunning=1 self._looptime=int(self.config.get("checkinterval",60)) debug.debug("Setting checkinterval=%i" %self._looptime) self._debuglevel=0 self.db=db.db() sock = kwargs.get("socket",None) self.pinger=megaping.MegaPing(sock) self._nrping = int(self.config.get("nrping" ,3)) # To keep status... self.netboxmap = {} # hash netboxid -> netbox self.down = [] # list of netboxids down self.replies = {} # hash netboxid -> circbuf self.ipToNetboxid = {}
def test_get_checkers_does_not_raise(): conn = db.db() assert conn.get_checkers(True) is not None