Usar o AWS User Notifications com detecção de anomalias de custo - Gerenciamento de custos da AWS

Usar o AWS User Notifications com detecção de anomalias de custo

Você pode usar o AWS User Notifications para configurar canais de entrega que o notificam sobre eventos de detecção de anomalias de custo. Você receberá uma notificação quando um evento corresponde a uma regra especificada. Você pode receber notificações de eventos por meio de vários canais, incluindo e-mail, Amazon Q Developer em aplicações de chat como Amazon Chime, Microsoft Teams e Slack, ou notificações push do AWS Console Mobile Application. Você também pode ver as notificações usando a Central de Notificações do Console no console do AWS User Notifications.

O AWS User Notifications também é compatível com agregação, o que pode reduzir o número de notificações recebidas durante eventos específicos. Para obter mais informações, consulte o Guia do usuário do AWS User Notifications.

Para usar as Notificações de Usuário da AWS, você deve ter as permissões corretas do AWS Identity and Access Management (IAM). Para obter mais informações sobre como configurar suas permissões do IAM, consulte Criar uma configuração de notificação no Guia do usuário do AWS User Notifications.

Exemplo: evento EventBridge para Anomaly Detected

Aqui está um exemplo de evento generalizado para o Anomaly Detected. Você pode assinar eventos do EventBridge (como este) usando as Notificações de Usuários do AWS.

{ "version": "0", "id": "<id>", // alphanumeric string "source": "aws.ce", "detail-type": "Anomaly Detected", "account": "<account ID>", // 12 digit account id. "region": "<region>", // Cost Anomaly Detection home region. "time": "<date>", // Format: yyyy-MM-dd'T'hh:mm:ssZ "resources": [ "arn:aws:ce::123456789012:anomalymonitor/abcdef12-1234-4ea0-84cc-918a97d736ef" ], "detail": { "accountName": "<account name>", "anomalyEndDate": "2021-05-25T00:00:00Z", "anomalyId": "12345678-abcd-ef12-3456-987654321a12", "anomalyScore": { "currentScore": 0.47, "maxScore": 0.47 }, "anomalyStartDate": "2021-05-25T00:00:00Z", "dimensionValue": "<dimension value>", // service name for AWS Service Monitor "feedback": "string", "impact": { "maxImpact": 151, "totalActualSpend": 1301, "totalExpectedSpend": 300, "totalImpact": 1001, "totalImpactPercentage": 333.67 }, "rootCauses": [ { "linkedAccount": "<linked account ID>", // 12 digit account id. "linkedAccountName": "<linked account name>", "region": "<region>", "service": "<service name>", // AWS service name "usageType": "<usage type>", // AWS service usage type "impact": { "contribution": 601, } } ], "accountId": "<account ID>", // 12 digit account id. "monitorArn": "arn:aws:ce::123456789012:anomalymonitor/abcdef12-1234-4ea0-84cc-918a97d736ef", "monitorName": "<your monitor name>", "anomalyDetailsLink": "https://console.aws.amazon.com/cost-management/home#/anomaly-detection/monitors/abcdef12-1234-4ea0-84cc-918a97d736ef/anomalies/12345678-abcd-ef12-3456-987654321a12" } }

Filtragem de eventos

Você pode filtrar eventos por serviço e nome usando os filtros disponíveis no console do AWS User Notifications, ou por propriedades específicas, caso crie seu próprio filtro EventBridge a partir do código JSON.

Exemplo: filtrar por impacto

O filtro a seguir captura qualquer anomalia com um impacto total superior a USD 100 e um impacto percentual superior a 10%.

{ "detail": { "impact": { "totalImpact": [{ "numeric": [">", 100] }], "totalImpactPercentage": [{ "numeric": [">", 10] }] } } }

Exemplo: Filtrar por dimensão de serviço

O filtro a seguir captura anomalias específicas do serviço EC2, detectadas pelo monitor de serviços da AWS.

{ "detail": { "dimensionValue": ["Amazon Elastic Compute Cloud - Compute"], "monitorName": ["aws-services-monitor"] } }

Exemplo: Filtrar por tag de alocação de custos

O filtro a seguir captura anomalias para a equipe de aplicações frontend, detectadas por um monitor de etiquetas de alocação de custos dimensionais.

{ "detail": { "dimensionValue": ["ApplicationTeam:Frontend"], "monitorName": ["dimensional-CAT-monitor"] } }

Exemplo: Filtrar por causa raiz da região

O filtro a seguir captura anomalias que têm causas na região Leste dos EUA (Norte da Virgínia).

{ "detail": { "rootCauses": { "region": ["us-east-1"] } } }

Exemplo: Filtrar por vários critérios

O filtro complexo a seguir captura anomalias para a equipe de aplicações frontend com um impacto total superior a USD 100, um impacto percentual superior a 10% e causas principais na região leste dos EUA (Norte da Virgínia).

{ "detail": { "dimensionValue": ["ApplicationTeam:Frontend"], "monitorName": ["dimensional-CAT-monitor"], "impact": { "totalImpact": [{ "numeric": [">", 100] }], "totalImpactPercentage": [{ "numeric": [">", 10] }] }, "rootCauses": { "region": ["us-east-1"] } } }