View a markdown version of this page

Requisiti di payload per l'acquisizione di avvisi APM con EventBridge - Guida per l'utente di AWS Incident Detection and Response

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Requisiti di payload per l'acquisizione di avvisi APM con EventBridge

Da dove vengono acquisiti gli avvisi APM per Incident Detection and Response?

AWS Incident Detection and Response installa una regola gestita sul bus degli eventi a cui invii il payload finale trasformato. È consigliabile creare un bus di eventi personalizzato per questo scopo.

In che formato devono essere i payload?

Le seguenti coppie minime JSON chiave:valore sono richieste negli eventi del bus degli eventi acquisiti da AWS Incident Detection and Response:

{ "detail-type": "ams.monitoring/generic-apm", "source": "GenericAPMEvent" "detail": { "incident-detection-response-identifier": "Your alarm name from your APM", } }

Gli esempi seguenti mostrano un evento proveniente da un bus di eventi partner prima e dopo la sua trasformazione.

Prima della trasformazione:

{ "version": "0", "id": "a6150a80-601d-be41-1a1f-2c5527a99199", "detail-type": "Datadog Alert Notification", "source": "aws.partner/datadog.com/Datadog-aaa111bbbc", "account": "123456789012", "time": "2023-10-25T14:42:25Z", "region": "us-east-1", "resources": [], "detail": { "alert_type": "error", "event_type": "query_alert_monitor", "meta": { "monitor": { "id": 222222, "org_id": 3333333333, "type": "query alert", "name": "UnHealthyHostCount", "message": "@awseventbridge-Datadog-aaa111bbbc", "query": "max(last_5m):avg:aws.applicationelb.un_healthy_host_count{aws_account:123456789012} <= 1", "created_at": 1686884769000, "modified": 1698244915000, "options": { "thresholds": { "critical": 1.0 } }, }, "result": { "result_id": 7281010972796602670, "result_ts": 1698244878, "evaluation_ts": 1698244868, "scheduled_ts": 1698244938, "metadata": { "monitor_id": 222222, "metric": "aws.applicationelb.un_healthy_host_count" } }, "transition": { "trans_name": "Triggered", "trans_type": "alert" }, "states": { "source_state": "OK", "dest_state": "Alert" }, "duration": 0 }, "priority": "normal", "source_type_name": "Monitor Alert", "tags": [ "aws_account:123456789012", "monitor" ] } }

Nota che prima che l'evento venga trasformato detail-type e source indica i dettagli APM da cui ha avuto origine l'avviso. Questi devono essere modificati prima dell'ingestione. La incident-detection-response-identifier chiave non è ancora presente e deve essere aggiunta anche prima dell'ingestione.

Una funzione Lambda trasforma l'evento precedente e lo inserisce nel bus eventi di destinazione personalizzato o predefinito. Il payload trasformato deve includere le coppie chiave:valore richieste.

Dopo la trasformazione:

{ "version": "0", "id": "7f5e0fc1-e917-2b5d-a299-50f4735f1283", "detail-type": "ams.monitoring/generic-apm", "source": "GenericAPMEvent", "account": "123456789012", "time": "2023-10-25T14:42:25Z", "region": "us-east-1", "resources": [], "detail": { "incident-detection-response-identifier": "UnHealthyHostCount", "alert_type": "error", "event_type": "query_alert_monitor", "meta": { "monitor": { "id": 222222, "org_id": 3333333333, "type": "query alert", "name": "UnHealthyHostCount", "message": "@awseventbridge-Datadog-aaa111bbbc", "query": "max(last_5m):avg:aws.applicationelb.un_healthy_host_count{aws_account:123456789012} <= 1", "created_at": 1686884769000, "modified": 1698244915000, "options": { "thresholds": { "critical": 1.0 } }, }, "result": { "result_id": 7281010972796602670, "result_ts": 1698244878, "evaluation_ts": 1698244868, "scheduled_ts": 1698244938, "metadata": { "monitor_id": 222222, "metric": "aws.applicationelb.un_healthy_host_count" } }, "transition": { "trans_name": "Triggered", "trans_type": "alert" }, "states": { "source_state": "OK", "dest_state": "Alert" }, "duration": 0 }, "priority": "normal", "source_type_name": "Monitor Alert", "tags": [ "aws_account:123456789012", "monitor" ] } }

Nota che detail-type è oraams.monitoring/generic-apm, la fonte è ora GenericAPMEvent e sotto i dettagli c'è una nuova coppia chiave:valore:. incident-detection-response-identifier

Il incident-detection-response-identifier valore viene ricavato dal nome dell'avviso in base al payload inviato dall'APM. I percorsi dei nomi degli avvisi APM sono diversi da un APM all'altro. È necessario configurare una funzione Lambda per prendere il nome dell'allarme dal percorso corretto nel payload JSON APM ricevuto da Lambda e utilizzarlo per il valore. incident-detection-response-identifier

incident-detection-response-identifieri valori devono essere univoci per tipo di allarme inviato ad AWS Incident Detection and Response. Ogni nome univoco impostato su incident-detection-response-identifier deve essere fornito al team di AWS Incident Detection and Response durante l'onboarding. Gli eventi che hanno un valore sconosciuto o mancante per la incident-detection-response-identifier chiave non vengono elaborati.