Elastalert2 - правило плоской линии выходит из-под контроля

Я пытаюсь отслеживать внешнюю систему, которая отправляет пульс в мое приложение, используя elastalert2 2.2.1.

Внешняя система будет каждые 10 минут отправлять пульс на конечную точку API, и я преобразовываю этот пульс в сообщение журнала, которое отправляется в ELK.

Моя идея такова: я получаю событие журнала каждые 10 минут, поэтому каждые 25 минут должно быть найдено как минимум 2 события. Насколько я понимаю, путь с elastalert - это правило прямой линии :

        cpi_heartbeat: |-
    name: CPI Heartbeat missing
    type: flatline
    index: app-filebeat-*
    threshold: 2
    timeframe:
      minutes: 25
    filter:
    - term:
        logs.level: info
    - term:
        kubernetes.labels.app: sap-erp-adapter
    - term:
        logs.message: Heartbeat
    alert:
      - opsgenie

Я пытался заставить это работать почти весь день, но я просто не могу правильно настроить конфигурацию. Тем не менее, я могу подтвердить, что фильтры верны и соответствуют

Пример, показанный выше, будет:

  • быстро обнаруживать отсутствующие сердечные сокращения и срабатывать
  • будет продолжать срабатывать вечно - даже если сердцебиение вернется (где я ожидаю, что правило перестанет выдавать предупреждения)
  • в конечном итоге просто перейдет в «сумасшедший режим», где он начнет сообщать об отсутствии сердцебиения каждую минуту, хотя все в порядке.

Когда я настраивал правило, я либо доходил до точки, когда оповещение никогда не срабатывало, либо когда оповещение срабатывало постоянно.

Что я здесь делаю неправильно?

0 ответов

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