Crie uma regra de alerta para uma métrica de um recurso.
Este tópico apresenta um exemplo de criação de regra de alerta acionada por limiar para a métrica cpu_total de uma instância do Elastic Compute Service (ECS) com ID i-uf6j91r34rnwawoo****. O namespace do ECS é acs_ecs_dashboard, o grupo de contatos de alerta é ECS_Group e o nome da regra é test123. O ID da regra de alerta é a151cd6023eacee2f0978e03863cc1697c89508****. Para alertas de nível Critical, o método estatístico é Average, o operador de comparação é GreaterThanOrEqualToThreshold, o limiar é 90 e o número consecutivo de ocorrências da condição de acionamento necessário para gerar o alerta é 3.
Depuração
Parâmetros da solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Sim | PutResourceMetricRule | A operação a ser executada. Defina o valor como PutResourceMetricRule. |
| RuleId | String | Sim | a151cd6023eacee2f0978e03863cc1697c89508**** | O ID da regra de alerta. Especifique um novo ID ou o ID de uma regra existente. Para consultar o ID de uma regra de alerta, veja DescribeMetricRuleList. Nota Ao especificar um novo ID, o sistema cria uma regra de alerta acionada por limiar. |
| RuleName | String | Sim | test123 | O nome da regra de alerta. Especifique um novo nome ou o nome de uma regra existente. Para consultar o nome de uma regra de alerta, veja DescribeMetricRuleList. Nota Ao especificar um novo nome, o sistema cria uma regra de alerta acionada por limiar. |
| Namespace | String | Sim | acs_ecs_dashboard | O namespace do serviço de nuvem. Para consultar o namespace de um serviço, veja Apêndice 1: Métricas. Nota Para criar uma regra de alerta do Prometheus no Hybrid Cloud Monitoring, defina este parâmetro como acs_prometheus. |
| MetricName | String | Sim | cpu_total | O nome da métrica. Para consultar o nome de uma métrica, veja Apêndice 1: Métricas. Nota Para criar uma regra de alerta do Prometheus no Hybrid Cloud Monitoring, defina este parâmetro como o nome do namespace. Para obter o nome de um namespace, veja DescribeHybridMonitorNamespaceList. |
| Resources | String | Sim | [{"instanceId":"i-uf6j91r34rnwawoo****"}] | As informações sobre o recurso. Exemplos: Para ver as dimensões compatíveis com a consulta de recursos, consulte Apêndice 1: Métricas. |
| ContactGroups | String | Sim | ECS_Group | Os grupos de contatos de alerta. O sistema envia notificações aos contatos pertencentes aos grupos especificados. Nota Um grupo pode conter um ou mais contatos de alerta. Para criar contatos e grupos de contatos, veja PutContact e PutContactGroup. |
| Webhook | String | Não | https://alert.aliyun.com.com:8080/callback | A URL de callback que recebe uma solicitação POST quando a regra aciona um alerta. |
| EffectiveInterval | String | Não | 00:00-23:59 | O período de vigência da regra de alerta. |
| NoEffectiveInterval | String | Não | 00:00-06:00 | O período em que a regra de alerta fica inativa. |
| SilenceTime | Integer | Não | 86400 | O período de silêncio em que o sistema não envia novas notificações, mesmo se as condições de acionamento forem atendidas. Unidade: segundos. Valor padrão: 86400. Nota Se o alerta persistir após o fim do período de silêncio, o CloudMonitor reenvia a notificação. |
| Period | String | Não | 60 | O período estatístico da métrica. Unidade: segundos. O valor padrão corresponde ao intervalo de coleta dos dados de monitoramento da métrica. Nota Para consultar o período estatístico de uma métrica, veja Apêndice 1: Métricas. |
| Interval | String | Não | 60 | O intervalo de acionamento do alerta. Unidade: segundos. Nota Para consultar o período estatístico de uma métrica, veja Apêndice 1: Métricas. |
| EmailSubject | String | Não | Alert for an ECS instance | O assunto do e-mail de notificação de alerta. |
| Escalations.Critical.Statistics | String | Não | Average | Os métodos estatísticos para alertas de nível Critical. O valor deste parâmetro depende da coluna Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Critical.ComparisonOperator | String | Não | GreaterThanOrEqualToThreshold | O operador de comparação entre o valor da métrica e o limiar para alertas de nível Critical. Valores válidos:
Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Critical.Threshold | String | Não | 90 | O limiar para alertas de nível Critical. Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Critical.Times | Integer | Não | 3 | O número consecutivo de vezes em que o valor da métrica deve atender à condição antes de acionar um alerta de nível Critical. Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Warn.Statistics | String | Não | Average | Os métodos estatísticos para alertas de nível Warn. O valor deste parâmetro depende da coluna Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Warn.ComparisonOperator | String | Não | GreaterThanOrEqualToThreshold | O operador de comparação entre o valor da métrica e o limiar para alertas de nível Warn. Valores válidos:
Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Warn.Threshold | String | Não | 90 | O limiar para alertas de nível Warn. Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Warn.Times | Integer | Não | 3 | O número consecutivo de vezes em que o valor da métrica deve atender à condição antes de acionar um alerta de nível Warn. Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Info.Statistics | String | Não | Average | Os métodos estatísticos para alertas de nível Info. O valor deste parâmetro depende da coluna Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Info.ComparisonOperator | String | Não | GreaterThanOrEqualToThreshold | O operador de comparação entre o valor da métrica e o limiar para alertas de nível Info. Valores válidos:
Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Info.Threshold | String | Não | 90 | O limiar para alertas de nível Info. Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| Escalations.Info.Times | Integer | Não | 3 | O número consecutivo de vezes em que o valor da métrica deve atender à condição antes de acionar um alerta de nível Info. Nota Selecione pelo menos um dos níveis de alerta (Critical, Warn ou Info) e especifique os parâmetros Statistics, ComparisonOperator, Threshold e Times para o nível escolhido. |
| NoDataPolicy | String | Não | KEEP_LAST_STATE | A ação adotada quando não há dados de monitoramento. Valores válidos:
|
| CompositeExpression | Object | Não | As condições de acionamento para múltiplas métricas. Nota As condições de acionamento para métrica única e múltiplas métricas são mutuamente exclusivas. Não é possível configurar ambas simultaneamente. |
|
| ExpressionList | Array | Não | As condições de acionamento criadas no modo padrão. |
|
| MetricName | String | Não | cpu_total | A métrica usada para monitorar o serviço de nuvem. |
| ComparisonOperator | String | Não | GreaterThanOrEqualToThreshold | O operador de comparação entre o valor da métrica e o limiar. Valores válidos:
|
| Period | Long | Não | 60 | O período de agregação da métrica. Unidade: segundos. |
| Statistics | String | Não | $Maximum | O método estatístico da métrica. Valores válidos:
Nota $ é o prefixo da métrica. Para ver os serviços da Alibaba Cloud compatíveis com o CloudMonitor, consulte Apêndice 1: Métricas. |
| Threshold | String | Não | 90 | O limiar de alerta. |
| ExpressionListJoin | String | Não | || | A relação lógica entre as condições de acionamento de múltiplas métricas. Valores válidos:
|
| ExpressionRaw | String | Não | $Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50) | As condições de acionamento criadas com expressões personalizadas. Use expressões nos seguintes cenários:
|
| Level | String | Não | Critical | O nível do alerta. Valores válidos:
|
| Times | Integer | Não | 3 | O número de acionamentos consecutivos. O CloudMonitor envia notificações de alerta quando os valores da métrica atendem às condições de acionamento pelo número de vezes definido neste parâmetro. |
| Labels.N.Key | String | Não | tagKey1 | A chave da tag. |
| Labels.N.Value | String | Não | ECS | O valor da tag. Nota Use um parâmetro de modelo para especificar o valor da tag. O CloudMonitor substitui o parâmetro pelo valor real da tag. |
| Prometheus | Object | Não | A regra de alerta do Prometheus. Nota Este parâmetro é obrigatório apenas para criar regras de alerta do Prometheus no Hybrid Cloud Monitoring. |
|
| PromQL | String | Não | cpuUsage{instanceId="xxxx"}[1m]>90 | A instrução de consulta PromQL. Nota Os dados obtidos pela consulta PromQL constituem os dados de monitoramento. Inclua o limiar de alerta nesta instrução. |
| Level | String | Não | Critical | O nível do alerta. Valores válidos:
|
| Times | Integer | Não | 3 | O número de acionamentos consecutivos. O CloudMonitor envia notificações de alerta quando os valores da métrica atendem às condições de acionamento pelo número de vezes definido neste parâmetro. |
| Annotations | Array | Não | As anotações da regra de alerta do Prometheus. Ao acionar um alerta, o sistema renderiza as chaves e valores anotados para facilitar a compreensão das métricas e da regra. Nota Este parâmetro equivale ao parâmetro annotations do Prometheus open source. |
|
| Key | String | Não | summary | A chave da anotação. |
| Value | String | Não | {{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} } | O valor da anotação. |
Para obter mais informações sobre parâmetros de solicitação comuns, consulte Parâmetros comuns.
Parâmetros de resposta
| Parâmetro | Tipo | Exemplo | Descrição |
| Code | String | 200 | O código de status HTTP. Nota O código 200 indica êxito na chamada. |
| Message | String | The request processing has failed due to some unknown error. | A mensagem retornada. |
| RequestId | String | 65D50468-ECEF-48F1-A6E1-D952E89D9436 | O ID da solicitação. |
| Success | Boolean | true | Indica se a chamada teve êxito. Valores válidos:
|
Exemplos
Exemplos de solicitações
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>
Exemplos de respostas de sucesso
Formato 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>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"Code" : "200",
"Message" : "",
"RequestId" : "65D50468-ECEF-48F1-A6E1-D952E89D9436",
"Success" : true
}
Códigos de erro
|
HttpCode |
Código de erro |
Mensagem de erro |
Descrição |
|
429 |
ResourceOverLimit |
The resource has exceeded the limit. %s |
A mensagem de erro retornada porque o número de recursos excedeu o limite superior. |
Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.