Scenario: fraziona messaggi per flusso di metriche

Procedura di impostazione di un allarme per l'invio di un messaggio per ogni flusso di metriche. In questo esempio si desidera ricevere una notifica ogni volta che un server supera una soglia. Questa impostazione consente di ricevere messaggi specifici del server.

Attenzione

Con i messaggi suddivisi per flusso di metriche, considera il numero di risorse monitorate dall'allarme. Se centinaia di risorse attivano contemporaneamente l'allarme, vengono inviati diversi messaggi contemporaneamente. Molti messaggi possono inondare il telefono (SMS), la posta in arrivo (e-mail) o altri endpoint di messaggistica e alcuni messaggi potrebbero essere ritardati a causa dei limiti del servizio. Per ulteriori informazioni sui limiti e sulle procedure ottimali, vedere Limiti dei messaggi di allarme.

Criterio IAM necessario

Questo argomento descrive i requisiti di accesso per lo scenario.

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 completare questo scenario.

Amministratori: per i criteri comuni che consentono agli utenti di gestire gli allarmi e creare argomenti, vedere Allarme accesso per gruppi.

Traguardo

L'obiettivo di questo ipotetico scenario è quello di ricevere messaggi di allarme separati per server. Si supponga di monitorare 50 server che emettono una metrica di utilizzo della CPU personalizzata e di voler sapere se l'utilizzo della CPU supera l'80%. Si desidera ricevere un messaggio ogni volta che le metriche di un singolo server attivano l'allarme.

Impostazione di questo scenario

L'impostazione implica la creazione di un allarme di soglia abilitato per i messaggi specifici del flusso di metriche. In questo scenario ipotetico, selezionare la metrica personalizzata MyCustomCPUMetric e il gruppo di risorse MyServerResourceGroup.

Puoi completare questi task nella console, nell'interfaccia CLI o nell'API di Oracle Cloud Infrastructure.

    1. Nella pagina di elenco Definizioni allarmi, selezionare Crea allarme. Per informazioni su come trovare la pagina dell'elenco, vedere Elenco di allarmi.
    2. Nella pagina Crea allarme, in Definisci allarme, immettere un nome allarme.

      Esempio: Messaggi specifici del server

      Se si desidera, modificare la Gravità allarme e immettere il testo del messaggio per Corpo allarme.

    3. In Descrizione metrica, selezionare la metrica personalizzata e definire la query.
      • Compartimento: selezionare il compartimento .
      • Spazio di nomi metrica: selezionare lo spazio di nomi per la metrica personalizzata.
      • Gruppo di risorse: MyServerResourceGroup
      • Nome metrica: MyCustomCPUMetric

        Nota

        È possibile selezionare qualsiasi metrica o metrica personalizzata OCI.
      • Intervallo: 1m
      • Statistica: Conteggio
    4. Saltare le dimensioni metrica.
    5. In Regola trigger, impostare la soglia su 80 e ritardare i messaggi di 10 minuti.
      • Operatore: maggiore di
      • Valore: 80
      • Minuti di ritardo trigger: 10
    6. In Imposta notifiche di allarme, Destinazione, fornire i valori riportati di seguito.
      • Servizio di destinazione: Notifiche
      • Compartimento: selezionare il compartimento che contiene l'argomento.
      • Argomento: selezionare l'argomento al quale si desidera inviare le notifiche. In questo scenario l'argomento esiste già e contiene le sottoscrizioni desiderate (SMS, e-mail e altri).
      Questo scenario utilizza un argomento per le notifiche di allarme. È possibile scegliere di utilizzare un flusso, utile quando si prevede un volume elevato di notifiche di allarme. Per ulteriori informazioni, vedere Limiti dei messaggi di allarme.
    7. In Raggruppamento messaggi, selezionare Dividi notifiche per flusso di metriche.
      Questa opzione è necessaria per ricevere un messaggio per ogni flusso di metriche.
    8. Selezionare Ripeti notifica? e lasciare l'impostazione predefinita a 60 minuti.
      I messaggi vengono inviati ogni ora purché l'allarme sia in stato Firing per uno o più flussi di metriche.
    9. Selezionare Salva allarme.
    Il monitoraggio inizia a valutare le metriche per i server nel compartimento selezionato, inviando un singolo messaggio di allarme (per sottoscrizione) per ogni flusso di metriche.
  • Creare l'allarme utilizzando il comando oci monitoring Alarm create. Per configurare l'allarme per i messaggi divisi in base al flusso di metriche, impostare --is-notifications-per-metric-dimension-enabled su true.

    Comando di esempio
    oci monitoring alarm create 
    --compartment-id "<compartment_OCID>"
    --destinations ["<topic_OCID>"]
    --display-name "Server-Specific Messages"
    --is-enabled true
    --is-notifications-per-metric-dimension-enabled true
    --message-format "ONS_OPTIMIZED"
    --metric-compartment-id "<metric_compartment_OCID>"
    --namespace "<custom_metric_namespace>"
    --query-text "MyCustomCPUMetric[1m].count() > 80"
    --repeat-notification-duration "PT1H"
    --resource-group "MyServerResourceGroup"
    --severity "CRITICAL"

    Per un elenco completo dei flag e delle opzioni variabili per i comandi CLI, vedere Command Line Reference.

  • Utilizzare l'operazione CreateAlarm per creare l'allarme. Per configurare l'allarme per i messaggi divisi in base al flusso di metriche, impostare isNotificationsPerMetricDimensionEnabled su true.

    Richiesta di esempio
    POST /20180401/alarms
    Host: telemetry.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "body": "Server exceeded CPU utilization threshold",
      "compartmentId": "<compartment_OCID>",
      "destinations": ["<topic_OCID>"],
      "displayName": "Server-Specific Messages",
      "isEnabled": true
      "isNotificationsPerMetricDimensionEnabled": true
      "messageFormat": "ONS_OPTIMIZED",
      "metricCompartmentId": "<metric_compartment_OCID>",
      "namespace": "<custom_metric_namespace>",
      "query": "MyCustomCPUMetric[1m].count() > 80",
      "repeatNotificationDuration": "PT1H",
      "resourceGroup": "MyServerResourceGroup",
      "severity": "CRITICAL"
    }