def assert_trigger_counts(self, processor, trigger, alert_triggers=0, resolve_triggers=0): assert processor.trigger_alert_counts[trigger.id] == alert_triggers assert processor.trigger_resolve_counts[trigger.id] == resolve_triggers alert_stats, resolve_stats = get_alert_rule_stats( processor.alert_rule, processor.subscription, [trigger])[1:] assert alert_stats[trigger.id] == alert_triggers assert resolve_stats[trigger.id] == resolve_triggers
def test(self): alert_rule = AlertRule(id=1) sub = QuerySubscription(project_id=2) triggers = [AlertRuleTrigger(id=3), AlertRuleTrigger(id=4)] client = get_redis_client() pipeline = client.pipeline() timestamp = datetime.now().replace(tzinfo=pytz.utc, microsecond=0) pipeline.set("{alert_rule:1:project:2}:last_update", int(to_timestamp(timestamp))) pipeline.set("{alert_rule:1:project:2}:resolve_triggered", 20) for key, value in [ ("{alert_rule:1:project:2}:trigger:3:alert_triggered", 1), ("{alert_rule:1:project:2}:trigger:4:alert_triggered", 3), ]: pipeline.set(key, value) pipeline.execute() last_update, alert_counts, resolve_counts = get_alert_rule_stats(alert_rule, sub, triggers) assert last_update == timestamp assert alert_counts == {3: 1, 4: 3} assert resolve_counts == 20
def test(self): alert_rule = AlertRule(id=1) sub = QuerySubscription(project_id=2) triggers = [AlertRuleTrigger(id=3), AlertRuleTrigger(id=4)] client = get_redis_client() pipeline = client.pipeline() pipeline.set("{alert_rule:1:project:2}:last_update", 1234) for key, value in [ ("{alert_rule:1:project:2}:trigger:3:alert_triggered", 1), ("{alert_rule:1:project:2}:trigger:3:resolve_triggered", 2), ("{alert_rule:1:project:2}:trigger:4:alert_triggered", 3), ("{alert_rule:1:project:2}:trigger:4:resolve_triggered", 4), ]: pipeline.set(key, value) pipeline.execute() last_update, alert_counts, resolve_counts = get_alert_rule_stats(alert_rule, sub, triggers) assert last_update == 1234 assert alert_counts == {3: 1, 4: 3} assert resolve_counts == {3: 2, 4: 4}
def assert_trigger_counts(self, processor, alert_triggers=0, resolve_triggers=0): assert processor.alert_triggers == alert_triggers assert processor.resolve_triggers == resolve_triggers assert get_alert_rule_stats(processor.alert_rule)[1:] == (alert_triggers, resolve_triggers)