Créez une règle d'alerte pour une métrique de ressource.
Cette rubrique présente un exemple illustrant la création d'une règle d'alerte déclenchée par seuil pour la métrique cpu_total d'une instance Elastic Compute Service (ECS) dont l'ID est i-uf6j91r34rnwawoo****. Le namespace ECS est acs_ecs_dashboard. Le groupe de contacts d'alerte associé à la règle est ECS_Group. Le nom de la règle d'alerte est test123. L'ID de la règle d'alerte est a151cd6023eacee2f0978e03863cc1697c89508****. La méthode statistique appliquée aux alertes de niveau Critical est Average. L'opérateur de comparaison utilisé pour les alertes de niveau Critical est GreaterThanOrEqualToThreshold. Le seuil défini pour les alertes de niveau Critical est 90. Une alerte de niveau Critical est déclenchée après 3 occurrences consécutives où la valeur de la métrique satisfait la condition de déclenchement.
Débogage
Paramètres de requête
| Parameter | Type | Required | Example | Description |
| Action | String | Yes | PutResourceMetricRule | L'opération que vous souhaitez effectuer. Définissez la valeur sur PutResourceMetricRule. |
| RuleId | String | Yes | a151cd6023eacee2f0978e03863cc1697c89508**** | L'ID de la règle d'alerte. Spécifiez un nouvel ID ou l'ID d'une règle d'alerte existante. Pour savoir comment interroger l'ID d'une règle d'alerte, consultez DescribeMetricRuleList. Remarque Si vous spécifiez un nouvel ID, une règle d'alerte déclenchée par seuil est créée. |
| RuleName | String | Yes | test123 | Le nom de la règle d'alerte. Spécifiez un nouveau nom ou le nom d'une règle d'alerte existante. Pour savoir comment interroger le nom d'une règle d'alerte, consultez DescribeMetricRuleList. Remarque Si vous spécifiez un nouveau nom, une règle d'alerte déclenchée par seuil est créée. |
| Namespace | String | Yes | acs_ecs_dashboard | Le namespace du service cloud. Pour savoir comment interroger le namespace d'un service cloud, consultez Annexe 1 : Métriques. Remarque Si vous créez une règle d'alerte Prometheus pour Hybrid Cloud Monitoring, vous devez définir ce paramètre sur acs_prometheus. |
| MetricName | String | Yes | cpu_total | Le nom de la métrique. Pour savoir comment interroger le nom d'une métrique, consultez Annexe 1 : Métriques. Remarque Si vous créez une règle d'alerte Prometheus pour Hybrid Cloud Monitoring, vous devez définir ce paramètre sur le nom du namespace. Pour savoir comment obtenir le nom d'un namespace, consultez DescribeHybridMonitorNamespaceList. |
| Resources | String | Yes | [{"instanceId":"i-uf6j91r34rnwawoo****"}] | Les informations relatives à la ressource. Exemples : Pour obtenir des informations sur les dimensions prises en charge pour interroger les ressources, consultez Annexe 1 : Métriques. |
| ContactGroups | String | Yes | ECS_Group | Les groupes de contacts d'alerte. Les notifications d'alerte sont envoyées aux contacts appartenant aux groupes de contacts d'alerte spécifiés. Remarque Un groupe de contacts d'alerte peut contenir un ou plusieurs contacts d'alerte. Pour savoir comment créer des contacts d'alerte et des groupes de contacts d'alerte, consultez PutContact et PutContactGroup. |
| Webhook | String | No | https://alert.aliyun.com.com:8080/callback | L'URL de rappel à laquelle une requête POST est envoyée lorsqu'une alerte est déclenchée sur la base de la règle d'alerte. |
| EffectiveInterval | String | No | 00:00-23:59 | La période pendant laquelle la règle d'alerte est effective. |
| NoEffectiveInterval | String | No | 00:00-06:00 | La période pendant laquelle la règle d'alerte n'est pas effective. |
| SilenceTime | Integer | No | 86400 | La période de silence pendant laquelle aucune nouvelle notification d'alerte n'est envoyée, même si les conditions de déclenchement sont remplies. Unité : secondes. Valeur par défaut : 86400. Remarque Si une alerte n'est pas résolue à la fin de la période de silence, CloudMonitor renvoie une notification d'alerte. |
| Period | String | No | 60 | La période statistique de la métrique. Unité : secondes. La valeur par défaut correspond à l'intervalle de collecte des données de surveillance de la métrique. Remarque Pour savoir comment interroger la période statistique d'une métrique, consultez Annexe 1 : Métriques. |
| Interval | String | No | 60 | L'intervalle de déclenchement de l'alerte. Unité : secondes. Remarque Pour savoir comment interroger la période statistique d'une métrique, consultez Annexe 1 : Métriques. |
| EmailSubject | String | No | Alert for an ECS instance | L'objet de l'e-mail de notification d'alerte. |
| Escalations.Critical.Statistics | String | No | Average | Les méthodes statistiques pour les alertes de niveau Critical. La valeur de ce paramètre est déterminée par la colonne Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Critical.ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | L'opérateur utilisé pour comparer la valeur de la métrique au seuil pour les alertes de niveau Critical. Valeurs valides :
Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Critical.Threshold | String | No | 90 | Le seuil pour les alertes de niveau Critical. Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Critical.Times | Integer | No | 3 | Le nombre consécutif de fois où la valeur de la métrique satisfait la condition d'alerte avant qu'une alerte de niveau Critical ne soit déclenchée. Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Warn.Statistics | String | No | Average | Les méthodes statistiques pour les alertes de niveau Warn. La valeur de ce paramètre est déterminée par la colonne Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Warn.ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | L'opérateur utilisé pour comparer la valeur de la métrique au seuil pour les alertes de niveau Warn. Valeurs valides :
Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Warn.Threshold | String | No | 90 | Le seuil pour les alertes de niveau Warn. Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Warn.Times | Integer | No | 3 | Le nombre consécutif de fois où la valeur de la métrique satisfait la condition d'alerte avant qu'une alerte de niveau Warn ne soit déclenchée. Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Info.Statistics | String | No | Average | Les méthodes statistiques pour les alertes de niveau Info. La valeur de ce paramètre est déterminée par la colonne Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Info.ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | L'opérateur utilisé pour comparer la valeur de la métrique au seuil pour les alertes de niveau Info. Valeurs valides :
Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Info.Threshold | String | No | 90 | Le seuil pour les alertes de niveau Info. Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| Escalations.Info.Times | Integer | No | 3 | Le nombre consécutif de fois où la valeur de la métrique satisfait la condition d'alerte avant qu'une alerte de niveau Info ne soit déclenchée. Remarque Sélectionnez au moins un des niveaux d'alerte Critical, Warn et Info, et spécifiez les paramètres Statistics, ComparisonOperator, Threshold et Times pour le niveau d'alerte sélectionné. |
| NoDataPolicy | String | No | KEEP_LAST_STATE | La méthode utilisée pour gérer les alertes lorsqu'aucune donnée de surveillance n'est trouvée. Valeurs valides :
|
| CompositeExpression | Object | No | Les conditions de déclenchement pour plusieurs métriques. Remarque Les conditions de déclenchement pour une seule métrique et pour plusieurs métriques s'excluent mutuellement. Vous ne pouvez pas spécifier simultanément des conditions de déclenchement pour une seule métrique et pour plusieurs métriques. |
|
| ExpressionList | Array | No | Les conditions de déclenchement créées en mode standard. |
|
| MetricName | String | No | cpu_total | La métrique utilisée pour surveiller le service cloud. |
| ComparisonOperator | String | No | GreaterThanOrEqualToThreshold | L'opérateur utilisé pour comparer la valeur de la métrique au seuil. Valeurs valides :
|
| Period | Long | No | 60 | La période d'agrégation de la métrique. Unité : secondes. |
| Statistics | String | No | $Maximum | La méthode statistique de la métrique. Valeurs valides :
Remarque $ est le préfixe de la métrique. Pour obtenir des informations sur les services Alibaba Cloud pris en charge par CloudMonitor, consultez Annexe 1 : Métriques. |
| Threshold | String | No | 90 | Le seuil d'alerte. |
| ExpressionListJoin | String | No | || | La relation entre les conditions de déclenchement pour plusieurs métriques. Valeurs valides :
|
| ExpressionRaw | String | No | $Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50) | Les conditions de déclenchement créées à l'aide d'expressions. Vous pouvez utiliser des expressions pour créer des conditions de déclenchement dans les scénarios suivants :
|
| Level | String | No | Critical | Le niveau de l'alerte. Valeurs valides :
|
| Times | Integer | No | 3 | Le nombre de déclenchements consécutifs. Si le nombre de fois où les valeurs de métrique satisfont les conditions de déclenchement atteint la valeur de ce paramètre, CloudMonitor envoie des notifications d'alerte. |
| Labels.N.Key | String | No | tagKey1 | La clé du tag. |
| Labels.N.Value | String | No | ECS | La valeur du tag. Remarque Vous pouvez utiliser un paramètre de modèle pour spécifier une valeur de tag. CloudMonitor remplace la valeur du paramètre de modèle par une valeur de tag réelle. |
| Prometheus | Object | No | La règle d'alerte Prometheus. Remarque Ce paramètre est requis uniquement lorsque vous créez une règle d'alerte Prometheus pour Hybrid Cloud Monitoring. |
|
| PromQL | String | No | cpuUsage{instanceId="xxxx"}[1m]>90 | L'instruction de requête PromQL. Remarque Les données obtenues via l'instruction de requête PromQL constituent les données de surveillance. Vous devez inclure le seuil d'alerte dans cette instruction. |
| Level | String | No | Critical | Le niveau de l'alerte. Valeurs valides :
|
| Times | Integer | No | 3 | Le nombre de déclenchements consécutifs. Si le nombre de fois où les valeurs de métrique satisfont les conditions de déclenchement atteint la valeur de ce paramètre, CloudMonitor envoie des notifications d'alerte. |
| Annotations | Array | No | Les annotations de la règle d'alerte Prometheus. Lorsqu'une alerte Prometheus est déclenchée, le système rend les clés et valeurs annotées pour vous aider à comprendre les métriques et la règle d'alerte. Remarque Ce paramètre équivaut au paramètre annotations de Prometheus open source. |
|
| Key | String | No | summary | La clé de l'annotation. |
| Value | String | No | {{ $labels.instance }} CPU usage above 10 % {current value: {{ humanizePercentage $value }} } | La valeur de l'annotation. |
Pour plus d'informations sur les paramètres de requête communs, consultez Paramètres communs.
Paramètres de réponse
| Parameter | Type | Example | Description |
| Code | String | 200 | Le code d'état HTTP. Remarque Le code d'état 200 indique que l'appel a réussi. |
| Message | String | The request processing has failed due to some unknown error. | Le message renvoyé. |
| RequestId | String | 65D50468-ECEF-48F1-A6E1-D952E89D9436 | L'ID de la requête. |
| Success | Boolean | true | Indique si l'appel a réussi. Valeurs valides :
|
Exemples
Exemples de requêtes
http(s)://[Endpoint]/?Action=PutResourceMetricRule
&ContactGroups=ECS_Group
&MetricName=cpu_total
&Namespace=acs_ecs_dashboard
&Resources=[{"instanceId":"i-uf6j91r34rnwawoo****"}]
&RuleId=a151cd6023eacee2f0978e03863cc1697c89508****
&RuleName=test123
&Escalations.Critical.Statistics=Average
&Escalations.Critical.ComparisonOperator=GreaterThanOrEqualToThreshold
&Escalations.Critical.Threshold=90
&Escalations.Critical.Times=3
&<Common request parameters>
Exemples de réponses réussies
Format XML
HTTP/1.1 200 OK
Content-Type:application/xml
<PutResourceMetricRuleResponse>
<Code>200</Code>
<Message></Message>
<RequestId>65D50468-ECEF-48F1-A6E1-D952E89D9436</RequestId>
<Success>true</Success>
</PutResourceMetricRuleResponse>
Format JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"Code" : "200",
"Message" : "",
"RequestId" : "65D50468-ECEF-48F1-A6E1-D952E89D9436",
"Success" : true
}
Codes d'erreur
|
HttpCode |
Error code |
Error message |
Description |
|
429 |
ResourceOverLimit |
The resource has exceeded the limit. %s |
Le message d'erreur renvoyé indique que le nombre de ressources dépasse la limite supérieure. |
Pour obtenir la liste des codes d'erreur, consultez Codes d'erreur de service.