Outre les notifications par téléphone, SMS, e-mail et webhook, les rappels d'alerte de Cloud Monitor transmettent les alertes de seuil à vos systèmes O&M ou de messagerie via une requête HTTP POST.
téléphone, SMS,
Prérequis
Une URL publique pour votre système O&M ou de messagerie qui accepte les requêtes HTTP POST.
Contexte
-
Cloud Monitor envoie les notifications d'alerte à votre URL sous forme de requêtes POST HTTP ou HTTPS. Ajoutez les plages d'adresses IP suivantes à la liste d'autorisation de votre pare-feu :
Cloud Monitor ne permet pas de configurer directement une règle O&M automatisée dans la console pour redémarrer une instance ECS en fonction d'un seuil tel que l'utilisation de la mémoire. Pour ce faire, configurez un rappel d'alerte afin d'envoyer la notification d'alerte à votre propre service, puis faites appel à votre service pour appeler une opération API ECS (telle que RebootInstance) afin de redémarrer l'instance. Les rappels d'alerte sont envoyés sous forme de requêtes HTTP POST avec le format de données
application/x-www-form-urlencoded. Pour la solution d'automatisation basée sur les événements de changement d'état des instances ECS, consultez Automatiser les opérations O&M lors des changements d'état ECS.47.74.206.0/26 47.74.206.64/26 47.74.206.128/26 47.74.206.192/26 8.222.159.116 Cloud Monitor réessaie les rappels échoués jusqu'à trois fois, avec un délai d'attente de 5 secondes par requête.
La configuration groupée des rappels d'alerte de seuil n'est pas disponible dans la console Cloud Monitor. Utilisez plutôt les opérations API suivantes :
Appelez CreateMetricRuleTemplate pour créer un modèle d'alerte avec une URL de rappel, puis appelez ApplyMetricRuleTemplate pour l'appliquer à un groupe d'applications.
Appelez PutGroupMetricRule pour créer ou modifier une règle d'alerte pour un groupe d'applications avec une URL de rappel.
Procédure
Connectez-vous à la console Cloud Monitor.
Dans le volet de navigation de gauche, choisissez .
-
Sur la page Alert Rules, recherchez la règle d'alerte souhaitée et cliquez sur Modify dans sa colonne Actions.
RemarqueVous pouvez également créer une règle d'alerte.
-
Dans le panneau Modify Alert Rule, saisissez l'URL de rappel.
Pour tester la connectivité avec l'URL de rappel :
-
Cliquez sur Test, situé directement à droite de l'URL de rappel.
Dans le panneau WebHook Test, vérifiez le code d'état HTTP et les détails du résultat du test pour valider la connectivité.
RemarqueVous pouvez également définir le Test Template Type: et la Language:. Cliquez ensuite à nouveau sur Test pour afficher les résultats de test mis à jour.
Cliquez sur Close.
-
Cliquez sur Confirm.
Résultats
Lorsqu'une alerte se déclenche, Cloud Monitor envoie une requête POST à votre URL de rappel avec les paramètres suivants.
Le corps de la requête peut inclure des paramètres supplémentaires à l'avenir. Assurez-vous que votre endpoint gère correctement les paramètres inconnus.
Paramètre | Type | Description |
alertName | String | Le nom de l'alerte. |
alertState | String | L'état de l'alerte. Valeurs valides :
|
curValue | String | La valeur de la métrique au moment du déclenchement ou de la résolution de l'alerte. |
dimensions | String | Les dimensions de la ressource concernée par l'alerte. Exemple : |
expression | String | La condition qui déclenche l'alerte. |
groupId | String | L'ID du groupe d'applications. |
instanceName | String | Le nom de l'instance. |
lastTime | String | La durée de l'alerte. Unité : minutes. |
metricName | String | Le nom de la métrique, tel qu'indiqué dans la colonne Metric Name de Métriques pour les services cloud. |
metricProject | String | Le nom du service cloud. Pour la plupart des services, |
namespace | String | Le namespace du service cloud. Pour la plupart des services, le Pour certains services, le namespace diffère du |
preTriggerLevel | String | Le niveau de gravité précédent de l'alerte. Valeurs valides :
|
productGroupName | String | Le nom du groupe d'applications. |
rawMetricName | String | L'ID de la métrique, tel qu'indiqué dans la colonne Metric Id de Métriques pour les services cloud. |
regionId | String | L'ID de la région. |
regionName | String | Le nom de la région. |
ruleId | String | L'ID de la règle d'alerte déclenchée. |
timestamp | String | L'horodatage du déclenchement de l'alerte. |
transId | String | Un ID unique pour le cycle de vie d'une alerte sur une ressource spécifique, du déclenchement à la résolution. |
triggerLevel | String | Le niveau de gravité actuel de l'alerte. Valeurs valides :
|
unit | String | L'unité de la métrique, telle qu'indiquée dans la colonne Unit de Métriques pour les services cloud. |
userId | String | L'ID utilisateur. |
Tableau 1. Correspondances entre les namespaces des services cloud et les namespaces des rappels
|
Namespace du service cloud |
Namespace du rappel |
|
acs_ecs_dashboard |
acs_ecs |
|
acs_slb_dashboard |
acs_slb |
|
acs_rds_dashboard |
acs_rds |
|
acs_oss_dashboard |
acs_oss |
|
acs_sls_dashboard |
acs_sls |
|
acs_ess_dashboard |
acs_ess |
|
acs_containerservice_dashboard |
acs_containerservice |
|
acs_apigateway_dashboard |
acs_apigateway |
|
acs_redis_dashboard |
acs_kvstore |
|
acs_ocs_new |
acs_ocs |
|
acs_mns_new |
acs_mns |
Exemple de requête POST :
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
expression=$Average>=95&metricName=Host.mem.usedutilization&instanceName=instance-name-****&signature=eEq1zHuCUp0XSmLD8p8VtTKF****&metricProject=acs_ecs&userId=110803419679****&curValue=97.39&alertName=Basic Monitoring-ECS-Memory Usage&namespace=acs_ecs_dashboard&triggerLevel=WARN&alertState=ALERT&preTriggerLevel=WARN&ruleId=applyTemplateee147e59-664f-4033-a1be-e9595746****&dimensions={userId=110803419679****, instanceId=i-8psdh7l6lphbn10l****}×tamp=1508136760&productGroupName=test_Group&groupId=1666****&lastTime=2 minutes&rawMetricName=cpu_total®ionId=cn-hangzhou®ionName=China (Hangzhou)&transId=53767d2a-ae72-11ed-b2ca-00163e2c****&unit=%