Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exigences de charge utile pour l'ingestion d'alertes APM avec EventBridge
D'où proviennent les alertes APM issues de la détection et de la réponse aux incidents ?
AWS Incident Detection and Response installe une règle gérée sur le bus d'événements auquel vous envoyez votre charge utile transformée finale. Il est recommandé de créer un bus d'événements personnalisé à cette fin.
Dans quel format les charges utiles doivent-elles être utilisées ?
Les paires clé:valeur JSON minimales suivantes sont requises dans les événements du bus d'événements ingérés par AWS Incident Detection and Response :
{ "detail-type": "ams.monitoring/generic-apm", "source": "GenericAPMEvent" "detail": { "incident-detection-response-identifier": "Your alarm name from your APM", } }
Les exemples suivants montrent un événement provenant d'un bus d'événements partenaire avant et après sa transformation.
Avant la transformation :
{ "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" ] } }
Notez qu'avant que l'événement ne soit transformé, source cela indique detail-type les détails de l'APM d'où provient l'alerte. Ceux-ci doivent être modifiés avant l'ingestion. La incident-detection-response-identifier clé n'est pas encore présente et doit également être ajoutée avant l'ingestion.
Une fonction Lambda transforme l'événement ci-dessus et le place dans le bus d'événements personnalisé ou par défaut cible. La charge utile transformée doit inclure les paires clé:valeur requises.
Après transformation :
{ "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" ] } }
Notez que detail-type c'est maintenantams.monitoring/generic-apm, la source est maintenantGenericAPMEvent, et en détail, il y a une nouvelle paire clé:valeur :. incident-detection-response-identifier
La incident-detection-response-identifier valeur est extraite du nom de l'alerte en fonction de la charge utile envoyée par votre APM. Les chemins des noms d'alertes APM sont différents d'un APM à l'autre. Une fonction Lambda doit être configurée pour prendre le nom de l'alarme à partir du chemin correct dans la charge utile APM JSON reçue par Lambda et l'utiliser comme valeur. incident-detection-response-identifier
incident-detection-response-identifierles valeurs doivent être uniques par type d'alarme envoyé à AWS Incident Detection and Response. Chaque nom unique défini sur le incident-detection-response-identifier doit être fourni à l'équipe de détection et de réponse aux incidents d'AWS lors de l'intégration. Les événements dont la valeur de la incident-detection-response-identifier clé est inconnue ou manquante ne sont pas traités.