Prometheus Rule Groups - Create Or Update
Crie ou atualize uma definição de grupo de regras do Prometheus.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AlertsManagement/prometheusRuleGroups/{ruleGroupName}?api-version=2023-03-01
Parâmetros de URI
Nome | Em | Obrigatório | Tipo | Description |
---|---|---|---|---|
resource
|
path | True |
string |
O nome do grupo de recursos. O nome diferencia maiúsculas de minúsculas. |
rule
|
path | True |
string |
O nome do grupo de regras. Padrão Regex: |
subscription
|
path | True |
string |
A ID da assinatura de destino. |
api-version
|
query | True |
string |
A versão da API a ser usada para esta operação. |
Corpo da solicitação
Nome | Obrigatório | Tipo | Description |
---|---|---|---|
location | True |
string |
A localização geográfica em que o recurso reside |
properties.rules | True |
Define as regras no grupo de regras prometheus. |
|
properties.scopes | True |
string[] |
IDs de recurso de workspaces do Azure Monitor de destino. No momento, essa versão de api está limitada à criação com um escopo. Isso pode mudar no futuro. |
properties.clusterName |
string |
Aplicar a regra aos dados de um cluster específico. |
|
properties.description |
string |
Descrição do grupo de regras. |
|
properties.enabled |
boolean |
Habilitar/desabilitar o grupo de regras. |
|
properties.interval |
string |
O intervalo no qual executar o grupo de regras prometheus representado no formato de duração ISO 8601. Deve ser entre 1 e 15 minutos |
|
tags |
object |
Marcas de recurso. |
Respostas
Nome | Tipo | Description |
---|---|---|
200 OK |
OK (atualizado). |
|
201 Created |
Criado (nova regra de alerta foi criada). |
|
Other Status Codes |
Resposta de erro que descreve por que a operação falhou. |
Exemplos
Create or Update a cluster centric Prometheus |
Create or Update a Prometheus |
Create or Update a cluster centric PrometheusRuleGroup
Solicitação de exemplo
PUT https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/promResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myPrometheusRuleGroup?api-version=2023-03-01
{
"location": "East US",
"properties": {
"description": "This is a rule group with culster centric configuration",
"interval": "PT10M",
"clusterName": "myClusterName",
"scopes": [
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/microsoft.monitor/accounts/myAzureMonitorWorkspace",
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myClusterName"
],
"rules": [
{
"alert": "Billing_Processing_Very_Slow",
"expression": "job_type:billing_jobs_duration_seconds:99p5m > 30",
"enabled": true,
"severity": 2,
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"annotationName1": "annotationValue1"
},
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": []
}
]
}
}
Resposta de exemplo
{
"id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/promResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myPrometheusRuleGroup",
"type": "Microsoft.AlertsManagement/prometheusRuleGroups",
"location": "East US",
"properties": {
"description": "This is a rule group with culster centric configuration",
"interval": "PT10M",
"clusterName": "myClusterName",
"scopes": [
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/microsoft.monitor/accounts/myAzureMonitorWorkspace",
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myClusterName"
],
"rules": [
{
"alert": "Billing_Processing_Very_Slow",
"expression": "job_type:billing_jobs_duration_seconds:99p5m > 30",
"enabled": true,
"severity": 2,
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"annotationName1": "annotationValue1"
},
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": []
}
]
}
}
{
"id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/promResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myPrometheusRuleGroup",
"type": "Microsoft.AlertsManagement/prometheusRuleGroups",
"location": "East US",
"properties": {
"description": "This is a rule group with culster centric configuration",
"interval": "PT10M",
"clusterName": "myClusterName",
"scopes": [
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/microsoft.monitor/accounts/myAzureMonitorWorkspace",
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myClusterName"
],
"rules": [
{
"alert": "Billing_Processing_Very_Slow",
"expression": "job_type:billing_jobs_duration_seconds:99p5m > 30",
"enabled": true,
"severity": 2,
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"annotationName1": "annotationValue1"
},
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": []
}
]
}
}
Create or Update a PrometheusRuleGroup
Solicitação de exemplo
PUT https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/promResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myPrometheusRuleGroup?api-version=2023-03-01
{
"location": "East US",
"properties": {
"description": "This is the description of the following rule group",
"enabled": true,
"interval": "PT10M",
"clusterName": "myClusterName",
"scopes": [
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/microsoft.monitor/accounts/myAzureMonitorWorkspace"
],
"rules": [
{
"record": "job_type:billing_jobs_duration_seconds:99p5m",
"expression": "histogram_quantile(0.99, sum(rate(jobs_duration_seconds_bucket{service=\"billing-processing\"}[5m])) by (job_type))",
"labels": {
"team": "prod"
}
},
{
"alert": "Billing_Processing_Very_Slow",
"expression": "job_type:billing_jobs_duration_seconds:99p5m > 30",
"enabled": true,
"severity": 2,
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"annotationName1": "annotationValue1"
},
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": [
{
"actionGroupId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/myrg/providers/microsoft.insights/actiongroups/myactiongroup",
"actionProperties": {
"key11": "value11",
"key12": "value12"
}
},
{
"actionGroupId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/myrg/providers/microsoft.insights/actiongroups/myotheractiongroup",
"actionProperties": {
"key21": "value21",
"key22": "value22"
}
}
]
}
]
}
}
Resposta de exemplo
{
"id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/promResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myPrometheusRuleGroup",
"type": "Microsoft.AlertsManagement/prometheusRuleGroups",
"location": "East US",
"properties": {
"description": "This is the description of the following rule group",
"enabled": true,
"interval": "PT10M",
"clusterName": "myClusterName",
"scopes": [
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/microsoft.monitor/accounts/myAzureMonitorWorkspace"
],
"rules": [
{
"record": "job_type:billing_jobs_duration_seconds:99p5m",
"expression": "histogram_quantile(0.99, sum(rate(jobs_duration_seconds_bucket{service=\"billing-processing\"}[5m])) by (job_type))",
"labels": {
"team": "prod"
}
},
{
"alert": "Billing_Processing_Very_Slow",
"expression": "job_type:billing_jobs_duration_seconds:99p5m > 30",
"enabled": true,
"severity": 2,
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"annotationName1": "annotationValue1"
},
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": [
{
"actionGroupId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/myrg/providers/microsoft.insights/actiongroups/myactiongroup",
"actionProperties": {
"key11": "value11",
"key12": "value12"
}
},
{
"actionGroupId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/myrg/providers/microsoft.insights/actiongroups/myotheractiongroup",
"actionProperties": {
"key21": "value21",
"key22": "value22"
}
}
]
}
]
}
}
{
"id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/promResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myPrometheusRuleGroup",
"type": "Microsoft.AlertsManagement/prometheusRuleGroups",
"location": "East US",
"properties": {
"description": "This is the description of the following rule group",
"enabled": true,
"interval": "PT10M",
"clusterName": "myClusterName",
"scopes": [
"/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/myResourceGroup/providers/microsoft.monitor/accounts/myAzureMonitorWorkspace"
],
"rules": [
{
"record": "job_type:billing_jobs_duration_seconds:99p5m",
"expression": "histogram_quantile(0.99, sum(rate(jobs_duration_seconds_bucket{service=\"billing-processing\"}[5m])) by (job_type))",
"labels": {
"team": "prod"
}
},
{
"alert": "Billing_Processing_Very_Slow",
"expression": "job_type:billing_jobs_duration_seconds:99p5m > 30",
"enabled": true,
"severity": 2,
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"annotationName1": "annotationValue1"
},
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": [
{
"actionGroupId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/myrg/providers/microsoft.insights/actiongroups/myactiongroup",
"actionProperties": {
"key11": "value11",
"key12": "value12"
}
},
{
"actionGroupId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/myrg/providers/microsoft.insights/actiongroups/myotheractiongroup",
"actionProperties": {
"key21": "value21",
"key22": "value22"
}
}
]
}
]
}
}
Definições
Nome | Description |
---|---|
created |
O tipo de identidade que criou o recurso. |
Error |
As informações adicionais do erro de gerenciamento de recursos. |
Error |
O detalhe do erro. |
Error |
Resposta de erro |
Prometheus |
Uma regra de gravação ou alerta do Azure Prometheus. |
Prometheus |
Uma ação de alerta. Relevante apenas para alertas. |
Prometheus |
O recurso do grupo de regras do Prometheus. |
Prometheus |
Especifica a configuração da regra de alerta do Prometheus. |
system |
Metadados relativos à criação e à última modificação do recurso. |
createdByType
O tipo de identidade que criou o recurso.
Nome | Tipo | Description |
---|---|---|
Application |
string |
|
Key |
string |
|
ManagedIdentity |
string |
|
User |
string |
ErrorAdditionalInfo
As informações adicionais do erro de gerenciamento de recursos.
Nome | Tipo | Description |
---|---|---|
info |
object |
As informações adicionais. |
type |
string |
O tipo de informação adicional. |
ErrorDetail
O detalhe do erro.
Nome | Tipo | Description |
---|---|---|
additionalInfo |
As informações adicionais do erro. |
|
code |
string |
O código de erro. |
details |
Os detalhes do erro. |
|
message |
string |
A mensagem de erro. |
target |
string |
O destino do erro. |
ErrorResponse
Resposta de erro
Nome | Tipo | Description |
---|---|---|
error |
O objeto de erro. |
PrometheusRule
Uma regra de gravação ou alerta do Azure Prometheus.
Nome | Tipo | Description |
---|---|---|
actions |
Ações executadas quando a regra de alerta se torna ativa e quando uma condição de alerta é resolvida. |
|
alert |
string |
Nome da regra de alerta. |
annotations |
object |
A cláusula annotations especifica um conjunto de rótulos informativos que podem ser usados para armazenar informações adicionais mais longas, como descrições de alerta ou links de runbook. Os valores de anotação podem ser modelos. |
enabled |
boolean |
Habilitar/desabilitar regra. |
expression |
string |
A expressão PromQL a ser avaliada. https://prometheus.io/docs/prometheus/latest/querying/basics/. Avaliado periodicamente como fornecido por 'interval', e o resultado registrado como um novo conjunto de séries temporais com o nome da métrica conforme fornecido por 'record'. |
for |
string |
O alerta de tempo deve estar ativo antes de disparar. |
labels |
object |
Rótulos a serem adicionados ou substituídos antes de armazenar o resultado. |
record |
string |
Nome das métricas registradas. |
resolveConfiguration |
Define a configuração para resolver alertas disparados. Relevante apenas para alertas. |
|
severity |
integer |
A gravidade dos alertas disparados pela regra. Deve estar entre 0 e 4. |
PrometheusRuleGroupAction
Uma ação de alerta. Relevante apenas para alertas.
Nome | Tipo | Description |
---|---|---|
actionGroupId |
string |
A ID do recurso do grupo de ações a ser usado. |
actionProperties |
object |
As propriedades de um objeto de grupo de ações. |
PrometheusRuleGroupResource
O recurso do grupo de regras do Prometheus.
Nome | Tipo | Description |
---|---|---|
id |
string |
ID de recurso totalmente qualificada para o recurso. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} |
location |
string |
A localização geográfica em que o recurso reside |
name |
string |
O nome do recurso |
properties.clusterName |
string |
Aplicar a regra aos dados de um cluster específico. |
properties.description |
string |
Descrição do grupo de regras. |
properties.enabled |
boolean |
Habilitar/desabilitar o grupo de regras. |
properties.interval |
string |
O intervalo no qual executar o grupo de regras prometheus representado no formato de duração ISO 8601. Deve ser entre 1 e 15 minutos |
properties.rules |
Define as regras no grupo de regras prometheus. |
|
properties.scopes |
string[] |
IDs de recurso de workspaces do Azure Monitor de destino. No momento, essa versão de api está limitada à criação com um escopo. Isso pode mudar no futuro. |
systemData |
Os metadados do Azure Resource Manager que contêm as informações createdBy e modifiedBy. |
|
tags |
object |
Marcas de recurso. |
type |
string |
Tipo do recurso. Por exemplo, "Microsoft.Compute/virtualMachines" ou "Microsoft.Storage/storageAccounts" |
PrometheusRuleResolveConfiguration
Especifica a configuração da regra de alerta do Prometheus.
Nome | Tipo | Description |
---|---|---|
autoResolved |
boolean |
Habilitar a resolução automática de alerta. |
timeToResolve |
string |
Tempo limite de resolução automática de alerta. |
systemData
Metadados relativos à criação e à última modificação do recurso.
Nome | Tipo | Description |
---|---|---|
createdAt |
string |
O carimbo de data/hora da criação de recursos (UTC). |
createdBy |
string |
A identidade que criou o recurso. |
createdByType |
O tipo de identidade que criou o recurso. |
|
lastModifiedAt |
string |
O carimbo de data/hora da última modificação do recurso (UTC) |
lastModifiedBy |
string |
A identidade que modificou o recurso pela última vez. |
lastModifiedByType |
O tipo de identidade que modificou o recurso pela última vez. |