Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Puede crear una regla de alerta de métricas en métricas de Prometheus o personalizadas (OTel) almacenadas en Azure Monitor Workspace, con una condición de alerta de métricas basada en consulta mediante PromQL.
En este artículo se proporciona información general sobre las alertas de métricas basadas en consultas en Azure Monitor, centrándose en cómo usar PromQL para crear reglas de alerta en las métricas de Prometheus o personalizadas (OTel) almacenadas en un área de trabajo de Azure Monitor.
¿Qué es PromQL?
PromQL es un lenguaje de consulta de métricas basado en código abierto con:
- Un conjunto de funciones y operadores de métricas para la selección, agregación y transformación de datos.
- Manipulación, evaluación y alertas multidimensionales nativas, incluyendo filtrado, agregación y reetiquetado de dimensiones.
- Condiciones compuestas, incluidas las de anidamiento.
- Combinación y comparación de varias métricas
- Reutilización de expresiones de alerta de PromQL de la comunidad o de sistemas de supervisión basados en Prometheus existentes.
Capabilities
Ámbitos de regla centrados en recursos y en espacios de trabajo.
- Las reglas centradas en recursos aplican consultas a métricas de recursos específicos de Azure, como Azure Kubernetes Services (AKS) o máquinas virtuales, con granularidad de RBAC al requerir acceso solo al recurso supervisado.
- Las reglas centradas en el área de trabajo permiten a los usuarios autorizados consultar cualquier métrica emitida en el área de trabajo por cualquier recurso, incluidas las consultas entre recursos.
Umbrales dinámicos. Las reglas de alerta que usan umbrales dinámicos pueden detectar y alertar sobre un comportamiento anómalo de un valor de expresión PromQL. La regla de alerta aprovecha las funcionalidades avanzadas de aprendizaje automático (ML) para analizar el comportamiento histórico de la expresión y calcula automáticamente los umbrales más adecuados en un momento dado, para determinar si una alerta debe activarse o no.
Autorización basada en identidad administrada. Puede autorizar el acceso a las áreas de trabajo mediante Azure Managed Identity. Managed Identity proporciona acceso seguro y administrado por Azure a los recursos, lo que mejora la granularidad de RBAC separando los derechos de acceso de usuario y regla. Las alertas de métricas admiten identidades asignadas por el usuario y asignadas por el sistema.
Personalización de alertas de despidon. Puede personalizar las alertas de métricas basadas en consultas para incluir información más contextual y específica del escenario.
- Asunto de correo electrónico personalizado: configure los asuntos de los correos electrónicos de alerta con información específica del escenario. Use el esquema de alerta común para identificar los campos de la carga.
- Propiedades personalizadas: agregue texto, vínculos o metadatos específicos del escenario a la carga de alerta.
Nota:
Tanto el asunto de correo electrónico personalizado como las propiedades personalizadas admiten la inserción dinámica de propiedades desde la carga de alerta.
Alertas de métricas basadas en consultas en comparación con los grupos de reglas de Prometheus
Las alertas de métricas basadas en consultas son una alternativa a las alertas en grupos de reglas de Prometheus.
Ventajas del uso de alertas de métricas basadas en consultas:
Las reglas de alerta se configuran y administran como recursos individuales de Azure. No es necesario crear y administrar grupos de reglas sobre las reglas individuales.
Compatibilidad con consultas centradas en recursos y RBAC: los usuarios no necesitan derechos de acceso a su área de trabajo.
Compatibilidad con umbrales dinámicos en los criterios de la regla de alertas.
Compatibilidad con la autenticación y autorización mediante Azure Managed Identity.
Compatibilidad con la personalización del asunto del correo electrónico.
Diferencias en el uso de reglas de alertas de métricas basadas en consultas frente a grupos de reglas de Prometheus
-
Limitación del ámbito. En los grupos de reglas de Prometheus, puede limitar el ámbito de las reglas a un único clúster de AKS o ARC mediante la
clusterNamepropiedad . Con las reglas de alertas de métricas basadas en consultas, la limitación del ámbito a un único clúster (o cualquier otro recurso) se realiza estableciendo la reglascopeen un recurso específico. -
Condición de regla. La propiedad de la regla de alerta de métricas
queryes completamente equivalente a la propiedad de grupos de reglas de Prometheusexpressiony generaría los mismos resultados. La propiedadforfunciona de la misma manera en ambos servicios. -
Manejo de etiquetas de métricas. Las alertas de métricas basadas en consultas admiten completamente el control y la manipulación de etiquetas en las métricas de Prometheus y OTel según el estándar PromQL. Sin embargo, cuando se desencadena una alerta, las etiquetas de métrica restantes y sus valores aparecen en la carga como
dimensions, siguiendo la terminología usada en otras alertas de Azure y experiencias de Azure Monitor. - Metadatos e información personalizados. Puede definir etiquetas y anotaciones personalizadas para agregar metadatos dinámicos, texto informativo, vínculos a guías de ejecución y mucho más a la carga útil de la alerta en las reglas de alerta del grupo de reglas de Prometheus. En las alertas de métricas basadas en consultas, se proporciona una funcionalidad similar a través de propiedades personalizadas.
Identidades administradas para alertas basadas en consultas
Debe usar Identidades administradas de Azure para las reglas de alertas de métricas basadas en consultas.
La identidad administrada debe tener un rol de Lector de supervisión (o un rol personalizado con permisos equivalentes) en el recurso del ámbito o AMW.
Se admiten tanto los tipos MI asignados por el usuario como los asignados por el sistema.
Esquema y propiedades
En la tabla siguiente se proporciona una explicación del esquema y las propiedades de una regla de alerta de métrica basada en consultas.
| Nombre | Obligatorio | Tipo | Description | Notas |
|---|---|---|---|---|
| nombre | Cierto | cuerda / cadena | Nombre de la regla de alertas | |
| location | Cierto | cuerda / cadena | Ubicación de los recursos | Desde regiones admitidas en la versión preliminar |
| tipo_de_identidad | Cierto | cuerda / cadena | Tipo de identidad administrada | AsignadoPorUsuario o AsignadoPorSistema |
| identity.userAssignedIdentities | Cierto | cuerda / cadena | Identificador de recurso de identidad administrada asignada por el usuario | Necesario si el tipo es UserAssigned |
| properties.enabled | Falso | boolean | Habilitación/deshabilitación de reglas | El valor predeterminado es true |
| propiedades.descripcion | Falso | cuerda / cadena | Descripción de la regla de alertas | |
| properties.severity | Falso | entero | Gravedad de la alerta | 0-4, el valor predeterminado es 3 (informativo) |
| properties.targetResourceType (tipo de recurso objetivo) | Falso | cuerda / cadena | Tipo de recurso de destino de alerta | |
| properties.scopes | Cierto | string[] | Identificador de recurso de Azure | Identificador de recurso de AMW (para una regla centrada en el área de trabajo) u otro identificador de recurso de Azure, identificador de grupo de recursos o identificador de suscripción (para una regla centrada en recursos). Actualmente solo se admite un único elemento de ámbito. |
| properties.evaluationFrequency | Cierto | cuerda / cadena | Intervalo de evaluación de reglas | Equivalente al intervalo de Prometheus. |
| properties.criteria.allOf[].name | Cierto | cuerda / cadena | Nombre de condición | |
| properties.criteria.allOf[].query | Cierto | cuerda / cadena | Consulta de regla de alerta | Consulta PromQL, equivalente a la expresión de regla de alerta de Prometheus |
| properties.criteria.allOf[].criterionType | Falso | cuerda / cadena | Tipo de condición | StaticThresholdCriterion (predeterminado) o DynamicThresholdCriterion |
| properties.criteria.allOf[].operator | Falso | cuerda / cadena | Tipo de condición | GreaterThan (valor predeterminado), LessThan, GreaterOrLessThan |
| properties.criteria.allOf[].alertSensitivity | Falso | cuerda / cadena | Tipo de condición | Medio (valor predeterminado), Alto, Bajo |
| properties.criteria.failingPeriods.for | Falso | cuerda / cadena | Duración durante la cual la condición debe permanecer verdadera antes de activar la alerta | Equivalente a la regla de alerta de Prometheus "for". Valores: 'PT1M', 'PT5M', etc. El valor predeterminado es 0 (activar inmediatamente) |
| properties.resolveConfigurations.autoResolved | Falso | boolean | Resolución automática de alertas habilitada | El valor predeterminado es true |
| properties.resolveConfigurations.timeToResolve | Falso | cuerda / cadena | Tiempo de espera de resolución automática de alertas | Valor predeterminado = "PT5M" |
| properties.actions[].actionGroupId | false | cuerda / cadena | lista de ID de grupo de acciones | el conjunto de grupos de acción que se ejecutan cuando se activa o se resuelve una alerta |
| properties.actionProperties.EmailSubject | false | cuerda / cadena | plantilla para asunto de correo electrónico personalizado | |
| properties.customProperties | false | cuerda / cadena | pares clave-valor para las propiedades personalizadas de las alertas |
Regiones soportadas
- East US
- West Europe
- Este de EE. UU. 2
- Norte de Europa
- Central US
- Oeste de EE. UU. 2
- UK South
- Sudeste Asiático
- Centro de la India
- West US
- Centro-oeste de Alemania
- Japón Oriental
- Canada Central
- Centro-sur de EE. UU.
- Este de Asia
- Australia East
- Centro de Suecia
- Norte de Suiza
- Centro de Francia
- Norte de Emiratos Árabes Unidos
- Norway East
- Centro de Corea del Sur
- Sur de Brasil
- Oeste de EE. UU. 3
- Australia Southeast
- Norte de Sudáfrica
Pasos siguientes
- Creación de un clúster de AKS con Prometheus administrado : la creación del área de trabajo de Azure Monitor también forma parte de este flujo de trabajo.
- Creación de una alerta basada en consultas