Scenario B: invio di messaggi di allarme a Slack e SMS
Impostare le notifiche automatiche su un canale Slack e un numero di telefono SMS quando vengono attivati gli allarmi.
Questo scenario prevede l'impostazione di un endpoint Slack per un canale e la creazione di un allarme che invia un messaggio a tale canale e a un numero di telefono SMS. Quando l'allarme viene attivato, il servizio Notifiche invia il messaggio di allarme all'argomento di destinazione, che viene quindi visualizzato nelle sottoscrizioni dell'argomento. In questo scenario, le sottoscrizioni dell'argomento includono il canale Slack e il numero di telefono SMS, nonché l'indirizzo di posta elettronica.
Criterio IAM necessario
Per utilizzare Oracle Cloud Infrastructure, un amministratore deve essere un membro di un gruppo a cui è stato concesso l'accesso di sicurezza in un criterio da un amministratore della tenancy. Questo accesso è necessario se si utilizza la console o l'API REST con un SDK, un'interfaccia CLI o un altro strumento. Se viene visualizzato un messaggio che informa che non si dispone dell'autorizzazione o che non si è autorizzati, verificare con l'amministratore della tenancy il tipo di accesso di cui si dispone e il compartimento in cui funziona l'accesso.
Se si è membri del gruppo Administrators, si dispone già dell'accesso necessario per eseguire questo scenario. In caso contrario, è necessario accedere a Monitoraggio e Notifiche.
Task 1: Impostare l'endpoint Slack
Creare un webhook in entrata nell'applicazione Slack.
Esempio di webhook in entrata per un'applicazione Slack (equivalente all'endpoint Slack per la sottoscrizione): https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
Dopo aver impostato l'endpoint Slack, è possibile completare tutti gli altri passi dello scenario nella console. In alternativa, puoi utilizzare l'interfaccia CLI o l'API di Oracle Cloud Infrastructure, che ti consente di eseguire manualmente le singole operazioni.
Task 2: Creare l'argomento
Per informazioni sulla risoluzione dei problemi, vedere Risoluzione dei problemi delle notifiche.
- Nota
Un altro workflow della console per questo scenario prevede la creazione di un nuovo argomento e la prima sottoscrizione quando si crea l'allarme, quindi si creano sottoscrizioni aggiuntive in tale argomento.- Aprire il pannello Crea argomento: nella pagina di elenco Argomenti, selezionare Crea argomento. Per informazioni su come trovare la pagina dell'elenco, vedere Elenco di argomenti.
- Per Nome, digitare quanto segue: Argomento di allarme
- Selezionare Crea.
Per creare un argomento, utilizzare il comando oci ons topic create e i parametri necessari:
oci ons topic create --name <name> --compartment-id <compartment_OCID>
Ad esempio:
oci ons topic create --name "Alarm Topic" --compartment-id "<compartment_OCID>"
Per un elenco completo dei parametri e dei valori per i comandi CLI, vedere Command Line Reference for Notifications.
Eseguire l'operazione CreateTopic per creare un argomento.
Ad esempio:
POST /20181201/topics Host: notification.us-phoenix-1.oraclecloud.com <authorization and other headers> { "name": "Alarm Topic", "compartmentId": "<compartment_OCID>" }
Task 3: Creare le sottoscrizioni
Per informazioni sulla risoluzione dei problemi, vedere Risoluzione dei problemi delle notifiche.
- Selezionare l'argomento creato in precedenza (il nome di esempio era Argomento di allarme): nella pagina di elenco Argomenti, selezionare l'argomento da utilizzare. Per informazioni su come trovare la pagina dell'elenco o l'argomento, vedere Elenco di argomenti.
-
Creare la sottoscrizione Slack.
-
Creare la sottoscrizione SMS.
-
Creare la sottoscrizione e-mail.
Per creare ogni sottoscrizione, utilizzare il comando oci ons subscription create e i parametri necessari.
oci ons subscription create --protocol <subscription_type> --subscription-endpoint <endpoint> --compartment-id <compartment_OCID> --topic-id <topic_OCID>
Esempio di sottoscrizione Slack:
oci ons subscription create --protocol "SLACK" --subscription-endpoint "<slack-endpoint>" --compartment-id "<compartment_OCID>" --topic-id "<topic_OCID>"
Esempio di sottoscrizione SMS:
oci ons subscription create --protocol "SMS" --subscription-endpoint "<sms-endpoint>" --compartment-id "<compartment_OCID>" --topic-id "<topic_OCID>"
Esempio di sottoscrizione e-mail:
oci ons subscription create --protocol "EMAIL" --subscription-endpoint "john.smith@example.com" --compartment-id "<compartment_OCID>" --topic-id "<topic_OCID>"
Per un elenco completo dei parametri e dei valori per i comandi CLI, vedere Command Line Reference for Notifications.
Eseguire l'operazione CreateSubscription per creare ogni sottoscrizione.
Esempio di sottoscrizione Slack:
POST /20181201/subscriptions Host: notification.us-phoenix-1.oraclecloud.com <authorization and other headers> { "topicId": "<topic_OCID>", "compartmentId": "<compartment_OCID>", "protocol": "SLACK", "endpoint": "<slack-endpoint>" }
Esempio di sottoscrizione SMS:
POST /20181201/subscriptions Host: notification.us-phoenix-1.oraclecloud.com <authorization and other headers> { "topicId": "<topic_OCID>", "compartmentId": "<compartment_OCID>", "protocol": "SMS", "endpoint": "<sms-endpoint>" }
Esempio di sottoscrizione e-mail:
POST /20181201/subscriptions Host: notification.us-phoenix-1.oraclecloud.com <authorization and other headers> { "topicId": "<topic_OCID>", "compartmentId": "<compartment_OCID>", "protocol": "EMAIL", "endpoint": "john.smith@example.com" }
Task 4: Creare l'allarme
Per informazioni sulla risoluzione dei problemi, vedere Risoluzione dei problemi delle notifiche.
- Aprire la pagina Crea allarme.
- Aprire il menu di navigazione e selezionare Osservabilità e gestione. In Monitoraggio, selezionare Definizioni allarmi.
-
Selezionare Crea allarme.
- Per Nome allarme, digitare quanto segue: Allarme utilizzo
-
In Descrizione metrica selezionare la metrica, l'intervallo e la statistica.
Campo Valore di esempio per questo scenario Compartimento Selezionare il compartimento contenente l'istanza da monitorare per un utilizzo elevato della CPU. Spazio di nomi metrica oci_computeagent Nome metrica CpuUtilization Intervallo 1m Statistiche Conteggio -
In Regola trigger impostare la soglia di allarme.
Campo Valore di esempio per questo scenario Operatore maggiore di Valore 90 Minuti di ritardo trigger 1 - In Notifiche, Destinazioni, selezionare l'argomento creato in precedenza.
Campo Valore di esempio per questo scenario Servizio di destinazione Servizio notifiche Compartimento Selezionare il compartimento che contiene l'argomento creato in precedenza. Argomento Selezionare l'argomento creato in precedenza. -
Selezionare Salva allarme.
- Aprire la pagina Crea allarme.
Utilizzare il comando oci monitoring Alarm create e i parametri richiesti per creare un allarme.
oci monitoring alarm create --display-name <name> --compartment-id <compartment_OCID> --metric-compartment-id <compartment_OCID> --namespace <metric_namespace> --query-text <mql_expression> --severity <level> --destinations <file_or_text> --is-enabled <true_or_false>
Ad esempio:
oci monitoring alarm create --display-name "Utilization Alarm" --compartment-id "<compartment_OCID>" --metric-compartment-id "<compartment_OCID>" --namespace "oci_computeagent" --query-text "CpuUtilization[1m].count() > 90" --severity "CRITICAL" --destinations "<topic_OCID>" --is-enabled true
Per un elenco completo dei parametri e dei valori per i comandi CLI, vedere Command Line Reference for Monitoring.
Eseguire l'operazione CreateAlarm per creare un allarme.
Ad esempio:
POST /20180401/alarms Host: telemetry.us-phoenix-1.oraclecloud.com <authorization and other headers> { "displayName": "Utilization Alarm", "compartmentId": "<compartment_OCID>", "metricCompartmentId": "<compartment_OCID>", "namespace": "oci_computeagent", "query": "CpuUtilization[1m].count() > 90", "severity": "CRITICAL", "destinations": [ "<topic_OCID>" ], "isEnabled": true }