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.
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.
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
sutrue
.Comando di esempiooci 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
sutrue
.Richiesta di esempioPOST /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" }