def run(self): parser = OptionParser(usage='usage: firetower options args') parser.add_option( '-c', '--conf', action='store', dest='conf_path', help='Path to YAML configuration file.') (options, args) = parser.parse_args() if len(args) > 1: parser.error('Please supply some arguments') conf = config.Config(options.conf_path) alert_time = None queue = Redis(host=conf.redis_host, port=conf.redis_port) cls = classifier.Levenshtein(queue) alert = alerts.Alert(queue) while 1: now = datetime.datetime.now() err = queue.pop(conf.queue_key) if not alert_time: alert_time = datetime.timedelta(minutes=conf.alert_time) + now elif alert_time < now: alert.check(conf.error_signatures, conf.timeslices) alert_time = datetime.timedelta(minutes=conf.alert_time) + now if err: parsed = json.loads(err) cls.classify(parsed) else: time.sleep(1)
def run(self): parser = OptionParser(usage="usage: firetower options args") parser.add_option("-c", "--conf", action="store", dest="conf_path", help="Path to YAML configuration file.") (options, args) = parser.parse_args() conf = config.Config(options.conf_path) alert_time = None queue = Redis(host=conf.redis_host, port=conf.redis_port) cls = classifier.Levenshtein(queue) alert = alerts.Alert(queue) while 1: now = datetime.datetime.now() err = queue.pop(conf.queue_key) if not alert_time: alert_time = datetime.timedelta(minutes=conf.alert_time) + now elif alert_time < now: alert.check(conf.error_signatures, conf.timeslices) alert_time = datetime.timedelta(minutes=conf.alert_time) + now if err: parsed = json.loads(err) cls.classify(parsed, conf.class_thresh) else: time.sleep(1)