Scenario: fraziona messaggi per flusso di metriche

Passare alla configurazione di un allarme per inviare un messaggio per ogni flusso di metriche. In questo esempio, si desidera ricevere una notifica ogni volta che un server supera una soglia. Con questa impostazione, si ricevono messaggi specifici del server.

Attenzione

Con i messaggi suddivisi per flusso di metriche, considerare 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 membro di un gruppo a cui è stato concesso l'accesso di sicurezza in un criterio da un amministratore della tenancy. Questo accesso è necessario, indipendentemente dal fatto che si stia utilizzando la console o l'API REST con un SDK, un'interfaccia CLI o unaltro 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 Accesso all'allarme per i gruppi.

Traguardo

L'obiettivo di questo scenario ipotetico è 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 prevede 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. Se è necessaria assistenza per trovare la pagina dell'elenco, vedere Elenca allarmi.
    2. Nella pagina Crea allarme, in Definisci allarme, immettere un nome allarme.

      Esempio: messaggi specifici del server

      Facoltativamente, modificare la severità dell'allarme e immettere il testo del messaggio per Corpo dell'allarme.

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

        Nota

        È possibile selezionare qualsiasi metrica OCI o metrica personalizzata.
      • Intervallo: 1m
      • Statistica: Conteggio
    4. Saltare 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 contenente l'argomento.
      • Argomento: selezionare l'argomento a cui 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 stream, utile quando si prevede un elevato volume di notifiche di allarme. Per ulteriori informazioni, vedere Limiti dei messaggi di allarme.
    7. In Raggruppamento messaggi selezionare Fraziona 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 alert 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 delle variabili per i comandi CLI, vedere Riferimento per la riga di comando.

  • 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"
    }