Назад | Перейти на главную страницу

Как в Datadog сделать оповещение по коду ответа?

Нужна помощь. Хочу сделать тревогу, если сайт выдаёт 401 502 и тд, ошибки. На сервере есть агент, который отправляет разные части в datadog. Есть такой модуль http_check, и в нем вроде как есть такая функция.

http_response_status_code - A string or Python regular expression for an HTTP status code. This check will report DOWN for any status code that does not match. This defaults to 1xx, 2xx and 3xx HTTP status codes. For example: 401 or 4\d\d

Вот мой http_check.yml

init_config:
instances:
  - name: My first service
    url: https://example.com
    collect_response_time: true
    timeout: 1
    skip_event: true
    http_response_status_code: 502
    check_certificate_expiration: true
    disable_ssl_validation: false
    days_warning: 7
    days_critical: 3
    tags:
      - url:example.com
      - env:production

На самом деле я пытаюсь закрыть nginx и посмотреть, что он отправит статус. Я не вижу ничего. Задача вообще следить за сайтами и предупреждать, если что-то отвалилось.

Разработчики из datadog знают об этой проблеме. Чтобы решить эту задачу, нам нужно использовать такую ​​настраиваемую проверку: http_check.py

Затем нам нужно перезапустить агент на хосте и имитировать ошибку. В датадоге событий мы увидим http://example.com returned a status of 503 after 30.0 seconds

После этого мы можем создавать оповещения. Эта настраиваемая проверка отправляет все коды, кроме 200.

Вы можете использовать (4 | 5) \ d \ d для http_response_status_code.