Datadog
Collega
Collega Datadog dal terminale. Passa --help per vedere i flag che Datadog accetta.
polylane integration connect --type datadogChiave API e application key per il tuo sito Datadog.
Collega Datadog così gli agenti possono interrogare log, metriche, monitor e dashboard durante le indagini.
Configurazione
- Seleziona il tuo sito Datadog (US1, US3, US5, EU1, AP1 e così via). Controlla l'URL di Datadog:
app.datadoghq.comè US1,app.datadoghq.euè EU1. - Inserisci la tua API key da Organization Settings → API Keys.
- Inserisci la tua Application key da Organization Settings → Application Keys.
- Polylane convalida entrambe le chiavi e si collega.
Una application key senza scope ha lo stesso accesso del tuo utente e funziona così com'è. Se limiti la chiave con degli scope, includi user_app_keys (necessario per collegarsi) più 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 e create_webhooks. Le chiavi vengono cifrate prima di essere archiviate e l'agente non le vede mai.
Il collegamento crea in Datadog un webhook chiamato polylane e vi iscrive ogni monitor, così gli alert arrivano in Polylane e vengono sottoposti a triage man mano che scattano.
Cosa possono fare gli agenti
- Cercare e filtrare i log con la sintassi di query di Datadog
- Leggere valori e andamenti delle metriche nel tempo
- Controllare quali monitor sono in alert e il loro stato
- Fare riferimento ai dati delle dashboard nelle indagini
Scollegamento
Scollega Datadog in Polylane, poi revoca l'application key e la chiave API in Datadog.
Registra gli alert di Datadog in Polylane insieme alle risorse che gestisci con Terraform.
Polylane iscrive un monitor aggiungendo la menzione @webhook-polylane al suo messaggio e il tag polylane:managed. Una sincronizzazione periodica applica entrambi a ogni monitor, quindi un monitor gestito con Terraform mostra un drift finché anche la sua configurazione Terraform non li include. Aggiungi entrambi a ogni monitor:
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"])
}
La configurazione più semplice lascia il webhook stesso gestito da Polylane e mette in Terraform solo la menzione e il tag. Se gestisci anche i webhook in Terraform, importa quello esistente invece di crearlo, perché i nomi dei webhook Datadog sono unici. Aggiungi prima il blocco di risorsa, poi importa:
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
Il token di telemetria autentica la consegna degli alert al tuo workspace. Lo trovi in Polylane sotto Settings → Telemetry tokens (il token chiamato datadog-integration), oppure crea un nuovo token nella stessa pagina. Ricollegare l'integrazione ricrea il webhook con un token nuovo, quindi un webhook importato ha poi bisogno che la sua variabile del token venga aggiornata.
Scollega
Scollegare interrompe ogni sincronizzazione e ogni controllo ed elimina le credenziali che Polylane conservava. Polylane rimuove ciò che l'API di Datadog gli permette di rimuovere. Quanto segue resta finché non lo rimuovi tu:
- @webhook-polylane appended to every monitor message
- polylane:managed tag on every monitor
polylane integration disconnect <id>Strumenti
12Operazioni che gli agenti possono eseguire nei thread.