Datadog monitor API / проверка монитора процессов terraform

Я пытаюсь интегрировать проверку монитора Datadog для процесса sshd в свою кодовую базу terraform, но получаю datadog_monitor.host_is_up2: error updating monitor: API error 400 Bad Request: {"errors":["The value provided for parameter 'query' is invalid"]}

Что я сделал, так это скопировал запрос монитора, который я создал на панели Datadog, и вставил его в tf файл:

resource "datadog_monitor" "host_is_up2" {
  name = "host is up"
  type = "metric alert"
  message = "Monitor triggered"
  escalation_message = "Escalation message"

  query = "process.up.over('process:ssh').last(4).count_by_status()"

  thresholds {
    ok = 0
    warning = 1
    critical = 2
  }

  notify_no_data = false
  renotify_interval = 60

  notify_audit = false
  timeout_h = 60
  include_tags = true
  silenced {
    "*" = 0
  }
}

ofc пример запроса "avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2" работает

Как правильно проверить с помощью Datadog API или terraform, работает ли конкретная служба, например sshd?


person cirpo    schedule 01.03.2017    source источник
comment
У Datadog есть окна онлайн-чата после входа в систему, обычно вы можете получить ответ напрямую. Это будет первый контакт для решения вашей проблемы. Если проблема решена, обновите ее здесь.   -  person BMW    schedule 01.03.2017


Ответы (1)


В вашем коде есть две ошибки:

  1. Используется type неверно. Это должно быть service check вместо metric alert.
  2. process.up нужно заключить в пару ''.

После этого ваш код будет работать безупречно.

person Arush Salil    schedule 27.04.2017
comment
Просто проверил на моей стороне, подтвердил, что это правильно. Вы также можете использовать " кавычки, если их экранировать как \" - person stephenlechner; 29.04.2017