Come posso risolvere un argomento di Amazon SNS che non riceve notifiche da Rilevamento delle anomalie dei costi AWS?

4 minuti di lettura
0

Il monitor di rilevamento delle anomalie di costo che ho creato non invia notifiche al mio argomento di Amazon Simple Notification Service (Amazon SNS).

Breve descrizione

Quando il monitor per il rilevamento delle anomalie di costo rileva un'anomalia, pubblica una notifica sull'argomento Amazon SNS. Quindi, Amazon SNS invia le notifiche agli endpoint sottoscritti, di solito tramite e-mail. La notifica può non raggiungere l'endpoint interessato per i seguenti motivi:

  • Le notifiche di rilevamento delle anomalie di costo non raggiungono l'argomento SNS. Ciò può essere dovuto alla mancanza delle autorizzazioni sulla policy di accesso all'argomento o sulla policy della chiave KMS quando la crittografia è attivata sull'argomento.
  • L'argomento SNS non invia notifiche agli endpoint sottoscritti.

Soluzione

Esamina la metrica NumberOfMessagesPublished SNS

Esamina la metrica SNS NumberOfMessagesPublished per verificare se gli eventi nella cronologia del rilevamento delle anomalie hanno punti dati corrispondenti per le notifiche pubblicate. Questa metrica indica se le notifiche sono state pubblicate correttamente sul tuo argomento.

La metrica NumberOfMessagesPublished SNS non ha punti di riferimento

Impostare le autorizzazioni richieste

Verifica di aver concesso al servizio Rilevamento delle anomalie dei costi AWS le autorizzazioni necessarie per pubblicare messaggi sul tuo argomento.

Il seguente esempio di policy di accesso agli argomenti SNS consente a Rilevamento delle anomalie dei costi AWS di pubblicare messaggi su un argomento Amazon SNS:

{  
  "Sid": "E.g., AWSAnomalyDetectionSNSPublishingPermissions",  
  "Effect": "Allow",  
  "Principal": {  
    "Service": "costalerts.amazonaws.com"  
  },  
  "Action": "SNS:Publish",  
  "Resource": "your topic ARN"  
}

Per ulteriori informazioni, consulta Creazione di un argomento Amazon SNS per le notifiche di anomalie.

Attivare la crittografia lato server

Controlla se hai attivato la crittografia lato server sul tuo argomento. Verifica di aver concesso al servizio Rilevamento delle anomalie dei costi AWS le autorizzazioni del Servizio di gestione delle chiavi AWS (AWS KMS) sulla tua chiave quando hai pubblicato l'argomento.

Il tuo argomento Amazon SNS deve utilizzare una chiave AWS KMS gestita dal cliente. Questa chiave KMS deve includere una policy personalizzata che consenta al servizio Rilevamento delle anomalie dei costi AWS di eseguire azioni kms:GenerateDataKey e kms:Decrypt. Per ulteriori informazioni, consulta Configurazione delle autorizzazioni di AWS KMS.

L'esempio seguente di dichiarazione di policy IAM consente a Rilevamento delle anomalie dei costi AWS di pubblicare messaggi su un argomento Amazon SNS crittografato:

{  
    "Version": "2012-10-17",  
    "Statement": [{  
        "Effect": "Allow",  
        "Principal": {  
            "Service": "costalerts.amazonaws.com"  
        },  
    "Action": [  
        "kms:GenerateDataKey*",  
        "kms:Decrypt"  
        ],  
    "Resource": "*"  
    }]  
    }

La metrica SNS NumberOfMessagesPublished è popolata, ma non si ricevono ancora notifiche

Segui questi passaggi per risolvere il problema:

  1. Verifica che gli endpoint sottoscritti siano nello stato Confermato.
  2. Verifica che le notifiche relative alle metriche NumberOfNotificationsDelivered e NumberOfNotificationsFailed siano pubblicate e inviate correttamente agli endpoint.
  3. Controlla se esiste una policy di filtro sugli endpoint sottoscritti. Controlla la metrica NumberOfNotificationsFilteredOut per verificare se i messaggi vengono filtrati. Se i messaggi vengono filtrati, consulta Come posso risolvere i problemi relativi alla politica dei filtri di abbonamento in Amazon SNS?
  4. Controlla se l'endpoint sottoscritto all'argomento è un protocollo di posta elettronica. Controlla se la metrica NumberOfNotificationsDelivered indica che le notifiche sono state recapitate correttamente ma non raggiungono la casella di posta elettronica. Per ulteriori informazioni, consulta Perché non posso ricevere notifiche e-mail dal mio argomento Amazon SNS?
  5. I messaggi potrebbero non raggiungere questi altri endpoint sottoscritti:
  • HTTP
  • Amazon Kinesis Data Firehose
  • AWS Lambda
  • Endpoint applicativo della piattaforma
  • Servizio Amazon Simple Queue
  • Short Message Service (SMS)

Attiva i registri dello stato di consegna degli argomenti di Amazon SNS per risolvere ulteriormente il problema. L'attributo ProviderResponse nei log spiega la causa dell'errore di consegna.

Nota: per assicurarti che lo stato di consegna di ogni messaggio sia registrato, imposta la frequenza di campionamento di successo al 100%. Se si utilizza una percentuale inferiore, SNS genera log di consegna solo per la percentuale specificata di messaggi recapitati o non riusciti.

AWS UFFICIALE
AWS UFFICIALEAggiornata 10 mesi fa