2017-02-23 10 views
0

J'essaie de configurer une alerte dans ElastAlert qui alertera si le nombre d'événements du lundi 01:00 - 02:00 était 10% plus grand ou plus petit que la même période à partir de lundi la semaine précédente.Comparer les données de la même heure la semaine dernière dans ElastAlert

Nos données diffèrent beaucoup de jour en jour, dimanche par rapport à lundi par exemple et aussi heure par heure.

Existe-t-il un moyen d'utiliser le type à pointe ou tout autre filtre pour faire ce genre de vérifications?

+0

Salut où vous êtes sur le point d'obtenir une solution pour cela? – kumar

+0

Pas encore j'ai peur. S'il vous plaît signaler si vous parvenez à trouver quelque chose –

Répondre

0

J'ai eu le même genre de problème. J'ai fini avec le forking d'elastAlert et l'ajout d'un nouveau type de règle. Sous le capot, il effectue un autre appel ES et compare les données. C'est un peu sale et ne correspond pas à l'architecture originale d'elastAlert. Mais ça fait la chose. C'est un mélange de règles 'spike' et 'metric_agrégation'.

https://github.com/spodgurskiy/elastalert

Voici l'exemple de ma configuration de règle.

# Alert when there is a sudden spike comparing to the historical data 
name: Spike detection 

type: metric_history_aggregation 
index: metrics-* 

# Reference window diff in minutes 
date_diff_ref: 10080 

# Spike detection 
threshold_total: 50 
threshold_cur: 0 
threshold_ref: 0 

spike_height: 1.05 
spike_type: both # <both/up/down> 

# Aggregation 
metric_agg_key: "<field_name>" 
metric_agg_type: sum 
max_threshold: 

# Alert section 
alert: 
- "slack" 
alert_display_timezone: US/Pacific 
alert_text_type: exclude_fields 
alert_subject: "" 
slack_webhook_url: "https://hooks.slack.com/services/..."