def evaluate(): mappings = get_mappings() for service in MonitoredService.objects.filter(active=True): logging.debug("[rules_evaluate]############################################### %s ###########################" % service) table = RuleTable("Service Rule", mappings, "RegexParser", #rawfile, "RAWFile", None) table.setPolicy(False) table.addRule(service.to_pypelib()) if settings.DEBUG: table.dump() try: ctxt = {"service": service} table.evaluate(ctxt) logging.info("[evaluate] service: %s has evaluate ALARM" % service) set_indicator(ctxt) except Exception, er: try: logging.debug("[evaluate] threshold has evaluate no alarm: %s" % er) service.alarm_indicators.get().delete() except AlarmIndicator.DoesNotExist: pass print("No ha cumplido para el servicio: %s" % service) logging.debug("[rules_evalute] iteration ended")
def evaluate_traps(): mappings = get_mappings() while True: monitored_service, rule = MonitoredService.from_redis_trap() if monitored_service is None: break logging.debug("[evaluate_traps] retrieved trap: %s" % rule) table = RuleTable("Trap rule", mappings, "RegexParser", #rawfile, "RAWFile", None) table.addRule(rule) if settings.DEBUG: table.dump() try: ctxt = {"service": monitored_service} table.evaluate(ctxt) logging.info("[evaluate_traps] service: %s has evaluate ALARM" % monitored_service) set_indicator(ctxt) except Exception, er: try: logging.debug("[evaluate_traps] threshold has evaluate no alarm, exception: %s" % er) monitored_service.alarm_indicators.get().delete() except AlarmIndicator.DoesNotExist: pass print("No ha cumplido para el servicio: %s" % monitored_service)