Datadog
Підключити
Підключіть Datadog із термінала. Передайте --help, щоб побачити прапорці, які приймає Datadog.
polylane integration connect --type datadogКлюч API та ключ застосунку для вашого сайту Datadog.
Підключіть Datadog, щоб агенти могли запитувати ваші логи, метрики, монітори та дашборди під час розслідувань.
Налаштування
- Виберіть свій сайт Datadog (US1, US3, US5, EU1, AP1 тощо). Перевірте свій URL Datadog:
app.datadoghq.comце US1,app.datadoghq.euце EU1. - Введіть свій ключ API з Organization Settings → API Keys.
- Введіть свій ключ застосунку з Organization Settings → Application Keys.
- Polylane перевіряє обидва ключі та підключається.
Ключ застосунку без областей дії має той самий доступ, що й ваш користувач, і працює як є. Якщо ви обмежуєте ключ областями дії, додайте user_app_keys (потрібен для підключення), а також logs_read_data, timeseries_query, metrics_read, monitors_read, monitors_write, monitors_downtime, dashboards_read, slos_read, hosts_read, events_read, incident_read, apm_read, aws_configuration_read і create_webhooks. Ваші ключі шифруються перед збереженням, і агент ніколи їх не бачить.
Підключення створює в Datadog webhook із назвою polylane і підписує на нього кожний монітор, тому алерти потрапляють у Polylane і проходять тріаж одразу після спрацювання.
Що можуть робити агенти
- Шукати та фільтрувати логи із синтаксисом запитів Datadog
- Читати значення метрик і тренди в часі
- Перевіряти, які монітори в стані алерту, і їхній статус
- Посилатися на дані дашбордів у розслідуваннях
Відключення
Відключіть Datadog у Polylane, а потім відкличте ключ застосунку та ключ API в Datadog.
Зареєструйте алерти Datadog у Polylane разом із ресурсами, якими керує Terraform.
Polylane підписує монітор, додаючи згадку @webhook-polylane до його повідомлення та тег polylane:managed. Періодична синхронізація застосовує обидва до кожного монітора, тому монітор, яким керує Terraform, показує дрейф, доки його конфігурація Terraform також їх не містить. Додайте обидва до кожного монітора:
resource "datadog_monitor" "high_error_rate" {
name = "High error rate on checkout"
type = "metric alert"
query = "sum(last_5m):sum:trace.http.request.errors{service:checkout}.as_count() > 50"
message = <<-EOT
{{#is_alert}}Error rate on checkout is above threshold.{{/is_alert}}
@webhook-polylane
EOT
tags = concat(var.tags, ["polylane:managed"])
}
Найпростіше налаштування залишає сам webhook під керуванням Polylane і додає в Terraform лише згадку та тег. Якщо ви також керуєте webhook у Terraform, імпортуйте наявний замість створення нового, оскільки назви webhook у Datadog унікальні. Спочатку додайте блок ресурсу, потім імпортуйте:
resource "datadog_webhook" "polylane" {
name = "polylane"
url = "https://sinks.polylane.com/v1/datadog"
encode_as = "json"
custom_headers = jsonencode({
"x-polylane-telemetry-token" = var.polylane_telemetry_token
})
payload = jsonencode({
alert_id = "$ALERT_ID"
alert_metric = "$ALERT_METRIC"
alert_query = "$ALERT_QUERY"
alert_scope = "$ALERT_SCOPE"
alert_status = "$ALERT_STATUS"
alert_title = "$ALERT_TITLE"
alert_transition = "$ALERT_TRANSITION"
alert_type = "$ALERT_TYPE"
date = "$DATE_POSIX"
event_msg = "$EVENT_MSG"
event_title = "$EVENT_TITLE"
event_type = "$EVENT_TYPE"
hostname = "$HOSTNAME"
id = "$ID"
link = "$LINK"
logs_sample = "$LOGS_SAMPLE"
org_id = "$ORG_ID"
org_name = "$ORG_NAME"
priority = "$PRIORITY"
snapshot = "$SNAPSHOT"
tags = "$TAGS"
user = "$USER"
username = "$USERNAME"
})
}
terraform import datadog_webhook.polylane polylane
Токен телеметрії автентифікує доставку алертів у ваш робочий простір. Знайдіть його в Polylane у розділі Settings → Telemetry tokens (токен із назвою datadog-integration) або створіть новий токен на тій самій сторінці. Повторне підключення інтеграції створює webhook заново з новим токеном, тому для імпортованого webhook після цього потрібно оновити змінну з токеном.
Відключити
Відключення зупиняє кожну синхронізацію та перевірку і видаляє облікові дані, які зберігав Polylane. Polylane видаляє те, що дозволяє видалити API Datadog. Наведене нижче залишається, доки ви не видалите його самостійно:
- @webhook-polylane appended to every monitor message
- polylane:managed tag on every monitor
polylane integration disconnect <id>Інструменти
12Операції, які агенти можуть виконувати в тредах.