As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Requisitos de carga útil para ingerir alertas de APM com EventBridge
De onde a Detecção e Resposta a Incidentes ingerem alertas de APM?
O AWS Incident Detection and Response instala uma regra gerenciada no barramento de eventos para o qual você envia sua carga final transformada. É uma prática recomendada criar um ônibus de eventos personalizado para essa finalidade.
Em qual formato as cargas devem estar?
Os seguintes pares mínimos de chave/valor JSON são necessários em eventos de barramento de eventos ingeridos pelo AWS Incident Detection and Response:
{ "detail-type": "ams.monitoring/generic-apm", "source": "GenericAPMEvent" "detail": { "incident-detection-response-identifier": "Your alarm name from your APM", } }
Os exemplos a seguir mostram um evento de um ônibus de eventos parceiro antes e depois de ser transformado.
Antes da transformação:
{ "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" ] } }
Observe isso antes de o evento ser transformado detail-type e source indica os detalhes do APM de onde o alerta se originou. Eles devem ser modificados antes da ingestão. A incident-detection-response-identifier chave ainda não está presente e também deve ser adicionada antes da ingestão.
Uma função Lambda transforma o evento acima e o coloca no barramento de eventos padrão ou personalizado de destino. A carga transformada deve incluir os pares chave-valor necessários.
Após a transformação:
{ "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" ] } }
Observe que agora detail-type éams.monitoring/generic-apm, a fonte é agora eGenericAPMEvent, em detalhes, há um novo par chave-valor:. incident-detection-response-identifier
O incident-detection-response-identifier valor é obtido do nome do alerta com base na carga que seu APM envia. Os caminhos do nome do alerta do APM são diferentes de um APM para outro. Uma função Lambda deve ser configurada para pegar o nome do alarme do caminho correto na carga JSON do APM recebida pelo Lambda e usá-lo para o valor. incident-detection-response-identifier
incident-detection-response-identifieros valores devem ser exclusivos por tipo de alarme enviado para o AWS Incident Detection and Response. Cada nome exclusivo definido no incident-detection-response-identifier deve ser fornecido à equipe de detecção e resposta a incidentes da AWS durante a integração. Eventos que têm um valor desconhecido ou ausente para a incident-detection-response-identifier chave não são processados.