Elastalert2 реалерт каждые 5 минут и группирует количество попаданий

Прошу вашего совета и помощи.

В настоящее время мой Heartbeat будет отслеживать состояние системы каждые 5 минут. Затем он сохранит данные в Elasticsearch. Мой Elastalert2 получит дату из Elasticsearch.

у меня 2 системы мониторятся

  • Приложение 1
  • Приложение 2

Ниже мои ожидания

  • отслеживайте каждые 5 минут, и если он набрал 6 ударов для группы или отдельного человека из 6 ударов за последние 30 минут, чтобы вызвать и предупредить

Ниже мой код Elastalert2 config.yml

      run_every:
  minutes: 1
buffer_time:
  minutes: 5

правило.yml

      type: "frequency"
index: "filebeat-*"
realert:
  minutes: 5
num_events: 6
timeframe:
  minutes: 30
filter:
  - term:
      monitor.status.keyword : "down"
  - terms:
      monitor.id.keyword : ["Application-1", "Application-2"]

Допустим, ниже указано время выполнения Elastalert2.


и, скажем, ниже указано время выполнения Heartbeat

      5:00
5:05
5:10
5:15
5:20
5:25
5:30
5:35

Не то, что это происходит, это то, что

  • Он подсчитывает количество попаданий отдельно как Приложение-1 как 3 попадания и Приложение-2 как 3 попадания, вызывая срабатывание предупреждения в 5:10, а не группируя вместе как Приложение-1 и Приложение-2 как 6 попаданий и вызывая предупреждение в 5:25

Кроме того, как только он запускает предупреждение, он ждет, пока не сработает еще 6. Я хочу, чтобы он считался с текущего времени до последних 30 минут, выполнял проверку и вызывал оповещение. Пример 5:25, 5:30, 5:35, так как система все еще не работает в течение последних 30 минут с текущего времени.

0 ответов

Другие вопросы по тегам