

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Alertas en la versión 10 de Grafana
<a name="v10-alerts"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Con la versión 10 de Grafana, Amazon Managed Grafana incluye acceso a un sistema de alertas actualizado, *Grafana Alerting*, que centraliza la información de las alertas en una única vista en la que se pueden hacer búsquedas. Las alertas de Grafana se introdujeron como una función opcional en Grafana v8 y GrafanaLabs han anunciado la eliminación de las alertas antiguas en la versión 11.

**nota**  
En esta documentación se cubre Grafana Alerting. Para obtener información sobre las alertas antiguas, consulte [Alertas clásicas del panel](old-alerts-overview.md).

Grafana Alerting le permite conocer los problemas en los sistemas, momentos después de que se producen.

Supervise los datos de las métricas entrantes o las entradas de registro y configure el sistema de alertas para detectar los eventos o las circunstancias específicos y, a continuación, enviar las notificaciones cuando se detecten.

De esta forma, se elimina la necesidad de hacer una supervisión manual y se ofrece una primera línea de defensa contra las interrupciones del sistema o los cambios que podrían convertirse en incidentes graves.

Con Grafana Alerting, crea consultas y expresiones a partir de múltiples orígenes de datos, sin importar dónde estén almacenados los datos, lo que le ofrece la flexibilidad de combinar los datos y las alertas en las métricas y los registros de manera nuevas y únicas. De este modo, podrá crear y administrar las alertas y tomar medidas al respecto desde una vista única y consolidada, y mejorar la capacidad de su equipo para identificar y resolver los problemas rápidamente.

Con las reglas de alerta de Mimir y Loki, puede ejecutar expresiones de alerta más cerca de los datos y a gran escala, todo ello administrado por la interfaz de usuario de Grafana que ya conoce.

**nota**  
Si va a migrar desde una versión anterior de Grafana, en la que utilizaba la versión heredada de Grafana Alerting, puede que le resulte útil ver las [diferencias entre las alertas heredadas y el nuevo Grafana Alerting](v10-alerting-use-grafana-alerts.md#v10-alerting-diff-old-new).

## Características y ventajas clave
<a name="v10-alerting-key-features"></a>

**Una página para todas las alertas**

Una única página de Grafana Alerting consolida las alertas gestionadas por Grafana y las alertas que residen en su origen de datos compatible con Prometheus en un solo lugar.

**Alertas multidimensionales**

Las reglas de alertas pueden crear varias instancias de alerta individuales por regla de alerta, conocidas como alertas multidimensionales, lo que le ofrece la eficacia y la flexibilidad necesarias para obtener visibilidad sobre todo el sistema con una sola regla de alerta. Para ello, agregue etiquetas a la consulta para especificar qué componente se va a supervisar y genere varias instancias de alerta para una sola regla de alerta. Por ejemplo, si quiere supervisar cada servidor de un clúster, una alerta multidimensional avisará a cada CPU, mientras que una alerta estándar avisará a todo el servidor.

**Alertas de ruta**

Dirija cada instancia de alerta a un punto de contacto específico en función de las etiquetas que defina. Las políticas de notificaciones son el conjunto de reglas sobre dónde, cuándo y cómo se dirigen las alertas a los puntos de contacto.

**Silenciar las alertas**

Los silencios impiden que se creen las notificaciones y solo duran un periodo específico. Los silencios le permiten dejar de recibir notificaciones persistentes de una o varias reglas de alerta. También puede pausar parcialmente una alerta en función de ciertos criterios. Los silencios tienen su propia sección específica para una mejor organización y visibilidad, de modo que pueda analizar las reglas de alertas pausadas sin saturar la vista principal de alertas.

**Temporizadores de silencio**

Un temporizador de silencio es un intervalo de tiempo recurrente en el que no se generan ni envían nuevas notificaciones para una política. Úselos para evitar que las alertas se activen durante un periodo específico y recurrente, por ejemplo, un periodo de mantenimiento habitual.

Al igual que los silencios, los temporizadores de silencio no impiden que se evalúen las reglas de alerta ni impiden que las instancias de alerta se muestren en la interfaz de usuario. Solo impiden la creación de notificaciones.

## Diseño de su sistema de alertas
<a name="v10-alerting-design"></a>

Supervisar sistemas de TI complejos y comprender si todo funciona correctamente es una tarea difícil. Por lo tanto, establecer un sistema de administración de alertas eficaz es esencial para informarle cuando las cosas van mal antes de que empiecen a afectar a los resultados de su empresa.

Diseñar y definir una configuración de administración de alertas que funcione lleva tiempo.

Estos son algunos consejos sobre cómo crear una configuración de administración de alertas eficaz para su empresa:

**¿Cuáles son las métricas clave de su empresa que quiere supervisar y sobre las que quiere emitir alertas?**
+ Busque eventos que sea importante conocer y que no sean tan triviales o frecuentes como para que los destinatarios los ignoren.
+ Las alertas solo deben crearse para eventos importantes que requieran atención o intervención inmediata.
+ Considere la calidad por encima de la cantidad.

**¿Qué tipo de alertas quiere utilizar?**
+ Elija entre las alertas administradas por Grafana o las alertas administradas por Grafana Mimir o Loki, o ambas.

**¿Cómo quiere organizar las alertas y las notificaciones?**
+ Priorice la selectividad a la hora de configurar quién quiere que reciba las alertas. Considere la posibilidad de enviarlas a quien esté de guardia o a un canal de Slack específico.
+ Automatice en la medida de lo posible mediante la API de alertas o las alertas como código (Terraform).

**¿Cómo puede reducir la fatiga de las alertas?**
+ Evite alertas excesivas e innecesarias mediante el uso de silencios, temporizadores de silencio o pausas de la evaluación de las reglas de alerta.
+ Ajuste continuamente las reglas de alerta para comprobar su eficacia. Elimine las reglas de alerta para evitar la duplicación o las alertas ineficaces.
+ Piense detenidamente en los niveles de prioridad y gravedad.
+ Revise continuamente los umbrales y las reglas de evaluación.

## Limitaciones de Grafana Alerting
<a name="v10-alerting-limitations"></a>
+ Al agregar reglas de otros sistemas, el sistema de Grafana Alerting puede recuperar las reglas de todos los orígenes de datos disponibles de Amazon Managed Service para Prometheus, Prometheus, Loki y Alertmanager. Es posible que no pueda obtener las reglas de otros orígenes de datos compatibles.

**Topics**
+ [Características y ventajas clave](#v10-alerting-key-features)
+ [Diseño de su sistema de alertas](#v10-alerting-design)
+ [Limitaciones de Grafana Alerting](#v10-alerting-limitations)
+ [Descripción general de](v10-alerting-overview.md)
+ [Configuración de alertas](v10-alerting-setup.md)
+ [Configuración de alertas](v10-alerting-configure.md)
+ [Administración de las alertas](v10-alerting-manage.md)

# Descripción general de
<a name="v10-alerting-overview"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Tanto si acaba de empezar como si es un usuario más experimentado de Grafana Alerting, obtenga más información sobre los aspectos básicos y las características disponibles que ayudan a crear, administrar y responder a las alertas, y a mejorar la capacidad de su equipo para resolver los problemas rápidamente.

## Principles
<a name="v10-alerting-overview-principles"></a>

En los sistemas de alertas basados en Prometheus, dispone de un generador que crea alertas y un receptor que las recibe. Por ejemplo, Prometheus es un generador de alertas y es responsable de evaluar las reglas de alertas, mientras que Alertmanager es un receptor de alertas y se encarga de agrupar, inhibir, silenciar y enviar notificaciones sobre alertas activadas y resueltas.

Grafana Alerting se basa en el modelo de Prometheus de diseño de sistemas de alertas. Cuenta con un generador de alertas interno responsable de programar y evaluar las reglas de alertas, así como un receptor de alertas interno responsable de agrupar, inhibir, silenciar y enviar notificaciones. Grafana no utiliza Prometheus como generador de alertas porque Grafana Alerting debe funcionar con muchos otros orígenes de datos además de Prometheus. Sin embargo, utiliza Alertmanager como receptor de alertas.

Las alertas se envían al receptor de alertas, donde se enrutan, agrupan, inhiben, silencian y notifican. En Grafana Alerting, el receptor de alertas predeterminado es el administrador de alertas incrustado en Grafana y se denomina Grafana Alertmanager. Sin embargo, también puede utilizar otros administradores de alertas, que se denominan [Alertmanagers externos](v10-alerting-setup-alertmanager.md).

## Aspectos fundamentales
<a name="v10-alerting-overview-fundamentals"></a>

A continuación, se proporciona información general de las distintas partes de Grafana Alerting.

### Reglas de alertas
<a name="v10-alerting-overview-alert-rules"></a>

Una regla de alertas es un conjunto de criterios que determinan cuándo debe activarse una alerta. Consta de una o más consultas y expresiones, una condición que debe cumplirse, un intervalo que determina la frecuencia con la que se evalúa la regla de alerta y un periodo durante el que se debe cumplir la condición para que se active una alerta.

Las reglas de alertas se evalúan a lo largo de su intervalo y cada regla de alerta puede tener cero, una o cualquier número de alertas activadas a la vez. El estado de la regla de alerta viene determinado por su alerta de mayor nivel `severe`, que puede ser Normal, Pendiente o Activación. Por ejemplo, si al menos una de las alertas de una regla de alertas está en activación, la regla de alertas también está en activación. El estado de una regla de alerta viene determinado por el estado de su evaluación más reciente. Estos pueden ser OK, Error y NoData.

Una característica muy importante de las reglas de alertas es que admiten anotaciones y etiquetas personalizadas. Estas permiten configurar las alertas con metadatos adicionales, como resúmenes y descripciones, y agregar etiquetas adicionales para dirigir las alertas a políticas de notificación específicas.

### Alertas
<a name="v10-alerting-overview-alerts"></a>

Las alertas se identifican de forma exclusiva mediante conjuntos de key/value pares denominados etiquetas. Cada clave es un nombre de etiqueta y cada valor es un valor de etiqueta. Por ejemplo, una alerta podría tener las etiquetas `foo=bar` y otra podría tener las etiquetas `foo=baz`. Una alerta puede tener muchas etiquetas, como `foo=bar,bar=baz`, pero no puede tener la misma etiqueta dos veces, como `foo=bar,foo=baz`. Dos alertas tampoco pueden tener las mismas etiquetas y, si dos alertas tienen las mismas etiquetas, por ejemplo `foo=bar,bar=baz` y `foo=bar,bar=baz`, se descartará una de las alertas. Las alertas se resuelven cuando la condición de la regla de alerta deja de cumplirse o se elimina la regla de alerta.

En las alertas administradas por Grafana, las alertas pueden tener el estado Normal, Pendiente, Alerta, Sin datos o Error. En las alertas gestionadas por fuentes de datos, como Mimir y Loki, las alertas pueden estar en Normal, Pendiente y Alerta, pero no NoData en Error.

### Puntos de contacto
<a name="v10-alerting-overview-contact-points"></a>

Los puntos de contacto determinan dónde se envían las notificaciones. Por ejemplo, puedes tener un punto de contacto que envíe notificaciones a una dirección de correo electrónico, a Slack, a un sistema de gestión de incidentes (IRM) como Grafana OnCall o Pagerduty, o a un webhook.

Las notificaciones que se envían desde los puntos de contacto se pueden personalizar mediante plantillas de notificaciones. Puede utilizar las plantillas de notificaciones para cambiar el título, el mensaje y la estructura de la notificación. Las plantillas de notificaciones no son específicas de las integraciones individuales o los puntos de contacto.

### Políticas de notificaciones
<a name="v10-alerting-overview-notification-policies"></a>

Las políticas de notificaciones agrupan las alertas y, a continuación, las dirigen a los puntos de contacto. Determinan cuándo se envían las notificaciones y con qué frecuencia deben repetirse.

Las alertas se ajustan a las políticas de notificación mediante criterios de coincidencia de etiquetas. Se trata de expresiones legibles por personas que indican si las etiquetas de la alerta coinciden de manera exacta, no coinciden de manera exacta, contienen o no contienen el texto esperado. Por ejemplo, el criterio de coincidencia `foo=bar` hace coincidir las alertas con la etiqueta `foo=bar`, mientras que el criterio de coincidencia `foo=~[a-zA-Z]+` hace coincidir las alertas con cualquier etiqueta llamada foo cuyo valor coincida con la expresión regular `[a-zA-Z]+`.

De manera predeterminada, una alerta solo puede coincidir con una política de notificaciones. Sin embargo, con la característica `continue`, las alertas se pueden configurar para que coincidan con cualquier número de políticas de notificaciones al mismo tiempo. Para obtener más información acerca de las políticas de notificaciones, consulte [Políticas de notificaciones](v10-alerting-explore-notifications-policies-details.md).

### Silencios y temporizadores de silencio
<a name="v10-alerting-overview-silences-and-mute-timings"></a>

Los silencios y los temporizadores de silencio le permiten pausar las notificaciones de alertas específicas o incluso de políticas de notificaciones completas. Utilice el silencio para pausar las notificaciones de forma puntual, por ejemplo, mientras trabaja en la solución de una alerta, y utilice los temporizadores de silencio para pausar las notificaciones a intervalos periódicos, por ejemplo, durante los periodos de mantenimiento programados de manera periódica.

**Topics**
+ [Principles](#v10-alerting-overview-principles)
+ [Aspectos fundamentales](#v10-alerting-overview-fundamentals)
+ [Orígenes de datos y Grafana Alerting](v10-alerting-overview-datasources.md)
+ [Alertas sobre datos numéricos](v10-alerting-overview-numeric.md)
+ [Etiquetas y anotaciones](v10-alerting-overview-labels.md)
+ [Acerca de las reglas de alertas](v10-alerting-explore-rules.md)
+ [Alertmanager](v10-alerting-explore-alertmanager.md)
+ [Puntos de contacto](v10-alerting-explore-contacts.md)
+ [Notificaciones](v10-alerting-explore-notifications.md)
+ [Alertas de alta disponibilidad](v10-alerting-explore-high-availability.md)

# Orígenes de datos y Grafana Alerting
<a name="v10-alerting-overview-datasources"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Hay varios orígenes de datos que son compatibles con Grafana Alerting. Cada origen de datos es compatible con un complemento. Grafana Alerting requiere que los complementos del origen de datos sean complementos de *backend* para poder evaluar las reglas que utilizan el origen de datos, ya que el motor de evaluación se ejecuta en el backend. Los complementos también deben especificar que son compatibles con Grafana Alerting.

Los orígenes de datos se agregan y actualizan con el tiempo. Se sabe que los siguientes orígenes de datos son compatibles con Grafana Alerting.
+ [Conectarse a una fuente de CloudWatch datos de Amazon](using-amazon-cloudwatch-in-AMG.md)
+ [Conexión a un origen de datos de Azure Monitor](using-azure-monitor-in-AMG.md)
+ [Conectarse a una fuente OpenSearch de datos de Amazon Service](using-Amazon-OpenSearch-in-AMG.md)
+ [Conexión a un origen de datos de Google Cloud Monitoring](using-google-cloud-monitoring-in-grafana.md)
+ [Conexión a un origen de datos de Graphite](using-graphite-in-AMG.md)
+ [Conexión a un origen de datos de InfluxDB](using-influxdb-in-AMG.md)
+ [Conexión a un origen de datos de Loki](using-loki-in-AMG.md)
+ [Conexión a un origen de datos de Microsoft SQL Server](using-microsoft-sql-server-in-AMG.md)
+ [Conexión a un origen de datos de MySQL](using-mysql-in-AMG.md)
+ [Conexión a un origen de datos de OpenTSDB](using-opentsdb-in-AMG.md)
+ [Conexión a un origen de datos de PostgreSQL](using-postgresql-in-AMG.md)
+ [Conexión a Amazon Managed Service para Prometheus y a los orígenes de datos de Prometheus de código abierto](prometheus-data-source.md)
+ [Conexión a un origen de datos de Jaeger](jaeger-data-source.md)
+ [Conexión a un origen de datos de Zipkin](zipkin-data-source.md)
+ [Conexión a un origen de datos de Tempo](tempo-data-source.md)
+ [Configurar una fuente TestData de datos para realizar pruebas](testdata-data-source.md)

Para obtener información más detallada sobre los orígenes de datos y los complementos de orígenes de datos en Amazon Managed Grafana, consulte [Conexión con orígenes de datos](AMG-data-sources.md).

# Alertas sobre datos numéricos
<a name="v10-alerting-overview-numeric"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

En este tema se describe cómo gestiona Grafana las alertas sobre datos numéricos en lugar de datos de serie temporal.

Entre determinados orígenes de datos, los datos numéricos que no son series temporales pueden generar una alerta directamente o convertirse en expresiones del servidor (SSE). Esto permite un mayor procesamiento y, por lo tanto, una mayor eficiencia en el origen de datos, y también puede simplificar las reglas de alerta. Al alertar sobre datos numéricos en lugar de datos de serie temporal, no es necesario reducir cada serie temporal etiquetada a un solo número. En su lugar, los números etiquetados se devuelven a Grafana.

## Datos tabulares
<a name="v10-alerting-numeric-tabular"></a>

Esta característica es compatible con los orígenes de datos de backend que consultan datos tabulares:
+ Orígenes de datos SQL como MySQL, Postgres, MSSQL y Oracle.
+ Los servicios basados en Azure Kusto: Azure Monitor (Logs), Azure Monitor (Azure Resource Graph) y Azure Data Explorer.

Una consulta con alertas administradas por Grafana o expresiones del servidor se considera numérica con estos orígenes de datos si:
+ La opción “Formatear como” está configurada como “Tabla” en la consulta del origen de datos.
+ La respuesta de la tabla devuelta a Grafana desde la consulta incluye solo una columna numérica (por ejemplo, int, double o float) y, opcionalmente, columnas de cadenas adicionales.

Si hay columnas de cadenas, esas columnas se convierten en etiquetas. El nombre de la columna pasa a ser el nombre de la etiqueta y el valor de cada fila pasa a ser el valor de la etiqueta correspondiente. Si se devuelven varias filas, cada fila debe identificarse de forma única por sus etiquetas.

## Ejemplo
<a name="v10-alerting-numeric-tabexample"></a>

Para una tabla MySQL llamada «DiskSpace»:


| Time | Host | Disk | PercentFree | 
| --- | --- | --- | --- | 
| 2021-June-7 | web1 | /etc | 3 | 
| 2021-June-7 | web2 | /var | 4 | 
| 2021-June-7 | web3 | /var | 8 | 
| ... | ... | ... | ... | 

Para poder consultar los datos, filtre por tiempo, pero sin devolver la serie temporal a Grafana. Por ejemplo, una alerta que se activaría por host, disco cuando haya menos del 5 % de espacio libre:

```
SELECT Host , Disk , CASE WHEN PercentFree  < 5.0 THEN PercentFree  ELSE 0 END FROM ( 
       SELECT
          Host, 
          Disk, 
          Avg(PercentFree) 
       FROM DiskSpace
       Group By
          Host, 
          Disk 
       Where __timeFilter(Time)
```

Esta consulta devuelve la siguiente respuesta de tabla a Grafana:


| Host | Disk | PercentFree | 
| --- | --- | --- | 
| web1 | /etc | 3 | 
| web2 | /var | 4 | 
| web3 | /var | 0 | 

Cuando esta consulta se utiliza como **condición** en una regla de alerta, se genera una alerta cuando el valor es distinto de cero. Como resultado, se producen tres instancias de alerta:


| Etiquetas | Status | 
| --- | --- | 
| \$1Host=web1,disk=/etc\$1 | Alertas | 
| \$1Host=web2,disk=/var\$1 | Alertas | 
| \$1Host=web3,disk=/var\$1 | Normal | 

# Etiquetas y anotaciones
<a name="v10-alerting-overview-labels"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las etiquetas y anotaciones contienen información sobre una alerta. Tanto las etiquetas como las anotaciones tienen la misma estructura: un conjunto de valores con nombre; sin embargo, sus usos previstos son diferentes. Un ejemplo de etiqueta, o de anotación equivalente, podría ser `alertname="test"`.

La principal diferencia entre una etiqueta y una anotación es que las etiquetas se utilizan para diferenciar una alerta de todas las demás alertas, mientras que las anotaciones se utilizan para agregar información adicional a una alerta existente.

Por ejemplo, pensemos en dos alertas de uso elevado de la CPU: una para `server1` y otra para `server2`. En este ejemplo, podríamos tener una etiqueta denominada `server` en la que la primera alerta tenga la etiqueta `server="server1"` y la segunda alerta tenga la etiqueta `server="server2"`. Sin embargo, es posible que también queramos agregar una descripción a cada alerta, como `"The CPU usage for server1 is above 75%."`, dónde `server1` y `75%` se sustituyen por el nombre y el uso de la CPU del servidor (consulte la documentación sobre [Plantillas de etiquetas y anotaciones](v10-alerting-overview-labels-templating.md) para ver cómo hacerlo). Este tipo de descripción sería más adecuada como anotación.

## Etiquetas
<a name="v10-alerting-overview-labels-labels"></a>

Las etiquetas contienen información que identifica una alerta. Un ejemplo de etiqueta podría ser `server=server1`. Cada alerta puede tener más de una etiqueta y el conjunto completo de etiquetas de una alerta se denomina conjunto de etiquetas. Es este conjunto de etiquetas el que identifica la alerta.

Por ejemplo, una alerta puede tener el conjunto de etiquetas `{alertname="High CPU usage",server="server1"}`, mientras que otra alerta puede tener el conjunto de etiquetas `{alertname="High CPU usage",server="server2"}`. Son dos alertas independientes porque, aunque sus etiquetas `alertname` son las mismas, las etiquetas `server` son diferentes.

El conjunto de etiquetas de una alerta es una combinación de las etiquetas del origen de datos, las etiquetas personalizadas de la regla de alerta y una serie de etiquetas reservadas, como `alertname`.

**Etiquetas personalizadas**

Las etiquetas personalizadas son etiquetas adicionales de la regla de alerta. Al igual que las anotaciones, las etiquetas personalizadas deben tener un nombre y su valor puede contener una combinación de texto y código de plantilla que se evalúa cuando se activa una alerta. La documentación sobre cómo crear etiquetas personalizadas de plantillas se encuentra [aquí](v10-alerting-overview-labels-templating.md).

Al utilizar etiquetas personalizadas con las plantillas, es importante asegurarse de que el valor de la etiqueta no cambie entre evaluaciones consecutivas de la regla de alerta, ya que esto acabará creando un gran número de alertas distintas. Sin embargo, no importa que la plantilla produzca valores de etiqueta diferentes para alertas diferentes. Por ejemplo, no coloque el valor de la consulta en una etiqueta personalizada, ya que esto acabará creando un nuevo conjunto de alertas cada vez que cambie el valor. En su lugar, utilice anotaciones.

También es importante asegurarse de que la etiqueta configurada para una alerta no tenga dos o más etiquetas con el mismo nombre. Si una etiqueta personalizada tiene el mismo nombre que una etiqueta del origen de datos, la sustituirá. Sin embargo, si una etiqueta personalizada tiene el mismo nombre que una etiqueta reservada, la etiqueta personalizada se omitirá en la alerta.

## Anotaciones
<a name="v10-alerting-overview-labels-annotations"></a>

Las anotaciones son pares con nombres que agregan información adicional a las alertas existentes. Hay una serie de anotaciones sugeridas en Grafana, como `description`, `summary`, `runbook_url`, `dashboardUId` y `panelId`. Al igual que las etiquetas personalizadas, las anotaciones deben tener un nombre y su valor puede contener una combinación de texto y código de plantilla que se evalúa cuando se activa una alerta. Si una anotación contiene código de plantilla, la plantilla se evalúa una vez cuando se activa la alerta. No se vuelve a evaluar, aunque se resuelva la alerta. La documentación sobre cómo crear anotaciones de plantillas se encuentra [aquí](v10-alerting-overview-labels-templating.md).

**Topics**
+ [Etiquetas](#v10-alerting-overview-labels-labels)
+ [Anotaciones](#v10-alerting-overview-labels-annotations)
+ [Cómo funciona la búsqueda de coincidencias de etiquetas](v10-alerting-overview-labels-matching.md)
+ [Etiquetas en Grafana Alerting](v10-alerting-overview-labels-alerting.md)
+ [Plantillas de etiquetas y anotaciones](v10-alerting-overview-labels-templating.md)

# Cómo funciona la búsqueda de coincidencias de etiquetas
<a name="v10-alerting-overview-labels-matching"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Use etiquetas y comparadores de etiquetas para vincular las reglas de alerta con las políticas de notificaciones y los silencios. Esto ofrece una forma muy flexible de administrar las instancias de alerta, especificar qué política debe gestionarlas y qué alertas silenciar.

Un comparador de etiquetas consta de 3 partes distintas: la **etiqueta**, el **valor** y el **operador**.
+ El campo **Etiqueta** es el nombre de la etiqueta que debe coincidir. Debe coincidir exactamente con el nombre de la etiqueta.
+ El campo **Valor** coincide con el valor correspondiente al nombre de **Etiqueta** especificado. La forma en que coincide depende del valor de **Operador**.
+ El campo **Operador** es el operador que debe coincidir con el valor de la etiqueta. Los operadores disponibles son:


| Operador | Description (Descripción) | 
| --- | --- | 
| `=` | Selecciona etiquetas que son exactamente iguales al valor. | 
| `!=` | Selecciona etiquetas que no son iguales al valor. | 
| `=~` | Selecciona etiquetas que buscan expresiones regulares que coincidan con el valor. | 
| `!~` | Selecciona etiquetas que buscan expresiones regulares que no coincidan con el valor. | 

Si utiliza varios criterios de comparación de etiquetas, se combinan mediante el operador lógico AND. Esto significa que todos los criterios de comparación deben coincidir para poder vincular una regla a una política.

## Ejemplo
<a name="v10-alerting-overview-labels-matching-ex"></a>

Si define el siguiente conjunto de etiquetas para su alerta:

```
{ foo=bar, baz=qux, id=12 }
```

entonces:
+ Un comparador de etiquetas definido como `foo=bar` busca coincidencias con esta regla de alerta.
+ Un comparador de etiquetas definido como `foo!=bar` *no* busca coincidencias con esta regla de alerta.
+ Un comparador de etiquetas definido como `id=~[0-9]+` busca coincidencias con esta regla de alerta.
+ Un comparador de etiquetas definido como `baz!~[0-9]+` busca coincidencias con esta regla de alerta.
+ Dos comparadores de etiquetas definidos como `foo=bar` y `id=~[0-9]+` buscan coincidencias con esta regla de alerta.

## Exclusión de etiquetas
<a name="v10-alerting-overview-labels-matching-exclude"></a>

También puede escribir criterios de coincidencia de etiquetas para excluirlas.

Este es un ejemplo que muestra cómo excluir la etiqueta `team`. Puede elegir entre cualquiera de estos valores para excluir la etiqueta.
+ `team=""`
+ `team!~.+`
+ `team=~^$`

# Etiquetas en Grafana Alerting
<a name="v10-alerting-overview-labels-alerting"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

En este tema se explica por qué las etiquetas son un componente fundamental de las alertas.
+ El conjunto completo de etiquetas de una alerta lo que la identifica de forma única entre las alertas de Grafana.
+ El Alertmanager utiliza etiquetas para hacer coincidir las alertas con los silencios y los grupos de alertas en las políticas de notificaciones.
+ En la interfaz de usuario de alertas se muestran etiquetas para cada instancia de alerta generada durante la evaluación de esa regla.
+ Los puntos de contacto pueden acceder a las etiquetas para generar dinámicamente notificaciones que contienen información específica de la alerta que está dando lugar a una notificación.
+ Puede agregar etiquetas a una [regla de alerta](v10-alerting-configure.md). Las etiquetas se configuran manualmente, usan funciones de plantilla y pueden hacer referencia a otras etiquetas. Las etiquetas agregadas a una regla de alerta tienen prioridad en caso de colisión entre etiquetas (excepto en el caso de las etiquetas reservadas de Grafana, a continuación puede obtener más información).

## Compatibilidad con un Alertmanager externo
<a name="v10-alerting-overview-labels-alerting-external"></a>

El Alertmanager integrado de Grafana admite claves y valores de etiquetas Unicode. Si usa un Prometheus Alertmanager externo, las claves de etiqueta deben ser compatibles con su [modelo de datos](https://prometheus.io/docs/concepts/data_model/#metric-names-and-labels). Esto significa que las claves de etiqueta solo deben contener **letras ASCII**, **números** y **guiones bajos** y coincidir con la expresión regular `[a-zA-Z_][a-zA-Z0-9_]*`. El motor de Grafana Alerting eliminará o sustituirá todos los caracteres no válidos antes de enviarlos al administrador de alertas externo de acuerdo con las siguientes reglas:
+ `Whitespace` se eliminará.
+ `ASCII characters` se reemplazará por `_`.
+ `All other characters` se reemplazará por su representación hexadecimal en minúsculas. Si este es el primer carácter, tendrá el prefijo `_`.

**nota**  
Si se sanean varias claves de etiqueta con el mismo valor, a los duplicados se les agregará un hash corto de la etiqueta original como sufijo.

## Etiquetas reservadas de Grafana
<a name="v10-alerting-overview-labels-alerting-reserved"></a>

**nota**  
Grafana reserva las etiquetas con el prefijo `grafana_` para un uso especial. Si se agrega una etiqueta configurada manualmente que empiece por `grafana_`, se sobrescribirá en caso de colisión.

Las etiquetas reservadas de Grafana se pueden utilizar de la misma forma que las etiquetas configuradas manualmente. La lista actual de etiquetas reservadas disponibles es:


| Etiqueta | Description (Descripción) | 
| --- | --- | 
| grafana\$1folder | Título de la carpeta que contiene la alerta. | 

# Plantillas de etiquetas y anotaciones
<a name="v10-alerting-overview-labels-templating"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Puede utilizar plantillas para incluir datos de consultas y expresiones en etiquetas y anotaciones. Por ejemplo, es posible que desee establecer la etiqueta de gravedad de una alerta en función del valor de la consulta o utilizar la etiqueta de instancia de la consulta en una anotación de resumen para saber qué servidor hace un uso elevado de la CPU.

Todas las plantillas deben escribirse en [texto/plantilla](https://pkg.go.dev/text/template). Independientemente de si va a crear una plantilla para una etiqueta o una anotación, debe escribir cada plantilla en línea dentro de la etiqueta o anotación para la que esté creando la plantilla. Esto significa que no puede compartir plantillas entre etiquetas y anotaciones, sino que tendrá que copiar las plantillas donde quiera usarlas.

Cada plantilla se evalúa siempre que se evalúa la regla de alerta y se evalúa para cada alerta por separado. Por ejemplo, si la regla de alerta tiene una anotación resumida basada en una plantilla y la regla de alerta tiene 10 alertas de activación, la plantilla se ejecutará 10 veces, una para cada alerta. En la medida de lo posible, evite hacer cálculos costosos en las plantillas.

## Ejemplos
<a name="v10-alerting-overview-labels-templating-examples"></a>

En lugar de escribir un tutorial completo, text/template, the following examples attempt to show the most common use-cases we have seen for templates. You can use these examples verbatim, or adapt them as necessary for your use case. For more information about how to write text/template consulte la documentación de [texto/plantilla](https://pkg.go.dev/text/template).

**Impresión de todas las etiquetas, separadas por comas**

Para imprimir todas las etiquetas, separadas por comas, imprima la variable `$labels`:

```
{{ $labels }}
```

Por ejemplo, si aparece una alerta con las etiquetas `alertname=High CPU usage`, `grafana_folder=CPU alerts` y `instance=server1`, imprimiría: 

```
alertname=High CPU usage, grafana_folder=CPU alerts, instance=server1
```

**nota**  
Si utiliza condiciones clásicas, `$labels` no contendrá ninguna etiqueta de la consulta. Consulte [la variable \$1labels](#v10-alerting-overview-labels-templating-the-labels-variable) para obtener más información.

**Impresión de todas las etiquetas, una por línea**

Para imprimir todas las etiquetas, una por línea, usa `range` a para iterar sobre cada key/value par e imprimirlas individualmente. Aquí, `$k` hace referencia al nombre y `$v`, al valor de la etiqueta actual: 

```
{{ range $k, $v := $labels -}}
{{ $k }}={{ $v }}
{{ end }}
```

Por ejemplo, si aparece una alerta con las etiquetas `alertname=High CPU usage`, `grafana_folder=CPU alerts` y `instance=server1`, imprimiría:

```
alertname=High CPU usage
grafana_folder=CPU alerts
instance=server1
```

**nota**  
Si utiliza condiciones clásicas, `$labels` no contendrá ninguna etiqueta de la consulta. Consulte [la variable \$1labels](#v10-alerting-overview-labels-templating-the-labels-variable) para obtener más información.

**Impresión de una etiqueta individual**

Para imprimir una etiqueta individual, utilice la función `index` con la variable `$labels`: 

```
The host {{ index $labels "instance" }} has exceeded 80% CPU usage for the last 5 minutes
```

Por ejemplo, si aparece una alerta con la etiqueta `instance=server1`, se imprimiría:

```
The host server1 has exceeded 80% CPU usage for the last 5 minutes
```

**nota**  
Si utiliza condiciones clásicas, `$labels` no contendrá ninguna etiqueta de la consulta. Consulte [la variable \$1labels](#v10-alerting-overview-labels-templating-the-labels-variable) para obtener más información.

**Impresión del valor de una consulta**

Para imprimir el valor de una consulta instantánea, puede imprimir su identificador de referencia mediante la función `index` y la variable `$values`: 

```
{{ index $values "A" }}
```

Por ejemplo, si una consulta instantánea devuelve el valor 81,2345, se imprimirá:

```
81.2345
```

Para imprimir el valor de una consulta de rango, primero debe reducirla de una serie temporal a un vector instantáneo con una expresión reducida. A continuación, puede imprimir el resultado de la expresión reducida mediante su identificador de referencia en su lugar. Por ejemplo, si la expresión reducida toma el promedio de A y tiene el RefID B, escribiría: 

```
{{ index $values "B" }}
```

**Impresión del valor para personas de una consulta**

Para imprimir el valor para personas de una consulta instantánea, utilice la función `humanize`:

```
{{ humanize (index $values "A").Value }}
```

Por ejemplo, si una consulta instantánea devuelve el valor 81,2345, se imprimirá: 

```
81.234
```

Para imprimir el valor para personas de una consulta de rango, primero debe reducirla de una serie temporal a un vector instantáneo con una expresión reducida. A continuación, puede imprimir el resultado de la expresión reducida mediante su identificador de referencia en su lugar. Por ejemplo, si la expresión reducida toma el promedio de A y tiene el RefID B, escribiría: 

```
{{ humanize (index $values "B").Value }}
```

**Impresión del valor de una consulta como porcentaje**

Para imprimir el valor de una consulta instantánea como un porcentaje, utilice la función `humanizePercentage`:

```
{{ humanizePercentage (index $values "A").Value }}
```

Esta función espera que el valor sea un número decimal entre 0 y 1. Si, por el contrario, el valor es un número decimal entre 0 y 100, puede dividirlo entre 100 en la consulta o mediante una expresión matemática. Si la consulta es una consulta de rango, primero debe reducirla de una serie temporal a un vector instantáneo con una expresión reducida.

**Establecimiento de una gravedad a partir del valor de una consulta**

Para establecer una etiqueta de gravedad a partir del valor de una consulta, utilice una instrucción if y la función de comparación mayor que. Asegúrese de utilizar decimales (`80.0`,,`50.0`, etc.) al hacer comparaciones`0.0`, `$values` ya que no text/template admite la coerción de tipos. Puede encontrar una lista de todas las funciones de comparación admitidas [aquí](https://pkg.go.dev/text/template#hdr-Functions).

```
{{ if (gt $values.A.Value 80.0) -}}
high
{{ else if (gt $values.A.Value 50.0) -}}
medium
{{ else -}}
low
{{- end }}
```

**Impresión de todas las etiquetas a partir de una condición clásica**

No puede utilizar `$labels` para imprimir etiquetas a partir de la consulta si utiliza las condiciones clásicas y debe utilizar `$values` en su lugar. Esto se debe a que las condiciones clásicas descartan estas etiquetas para aplicar un comportamiento unidimensional (como máximo una alerta por regla de alerta). Si las condiciones clásicas no descartaran estas etiquetas, las consultas que devolvieran varias series temporales harían que las alertas oscilaran entre activadas y resueltas constantemente, ya que las etiquetas cambiarían cada vez que se evaluara la regla de alerta.

En cambio, la variable `$values` contiene los valores reducidos de todas las series temporales para todas las condiciones que se activen. Por ejemplo, si tiene una regla de alerta con una consulta A que devuelve dos series temporales y una condición B clásica con dos condiciones, `$values` contendría `B0`, `B1`, `B2` y `B3`. Si la condición clásica B tuviera solo una condición, `$values` contendría solo `B0` y `B1`.

Para imprimir todas las etiquetas de todas las series temporales de activación, utilice la siguiente plantilla (asegúrese de sustituir `B` de la expresión regular por el RefID de la condición clásica si es diferente): 

```
{{ range $k, $v := $values -}}
{{ if (match "B[0-9]+" $k) -}}
{{ $k }}: {{ $v.Labels }}{{ end }}
{{ end }}
```

Por ejemplo, una condición clásica para dos series temporales que superen una sola condición imprimiría: 

```
B0: instance=server1
B1: instance=server2
```

Si la condición clásica tiene dos o más condiciones y una serie temporal supera varias condiciones al mismo tiempo, sus etiquetas se duplicarán para cada condición que se supere: 

```
B0: instance=server1
B1: instance=server2
B2: instance=server1
B3: instance=server2
```

Si necesita imprimir etiquetas únicas, debería considerar la posibilidad de cambiar las reglas de alerta de unidimensionales a multidimensionales. Para ello, sustituya la condición clásica por expresiones de reducción y matemáticas.

**Impresión de todos los valores a partir de una condición clásica**

Para imprimir todos los valores de una condición clásica, tome el ejemplo anterior y sustituya `$v.Labels` por `$v.Value`: 

```
{{ range $k, $v := $values -}}
{{ if (match "B[0-9]+" $k) -}}
{{ $k }}: {{ $v.Value }}{{ end }}
{{ end }}
```

Por ejemplo, una condición clásica para dos series temporales que superen una sola condición imprimiría: 

```
B0: 81.2345
B1: 84.5678
```

Si la condición clásica tiene dos o más condiciones y una serie temporal supera varias condiciones al mismo tiempo, `$values` contendrá los valores de todas las condiciones: 

```
B0: 81.2345
B1: 92.3456
B2: 84.5678
B3: 95.6789
```

## Variables
<a name="v10-alerting-overview-labels-templating-variables"></a>

Las siguientes variables están disponibles al crear plantillas de etiquetas y anotaciones:

### Variable de etiquetas
<a name="v10-alerting-overview-labels-templating-the-labels-variable"></a>

La variable `$labels` contiene todas las etiquetas de la consulta. Por ejemplo, supongamos que tiene una consulta que devuelve el uso de la CPU de todos los servidores y tiene una regla de alerta que se activa cuando alguno de los servidores ha superado el 80 % de uso de la CPU durante los últimos 5 minutos. Quiere agregar una anotación de resumen a la alerta que indique qué servidor hace un uso elevado de la CPU. Con la variable `$labels`, puede escribir una plantilla que imprima una oración legible por personas, como: 

```
CPU usage for {{ index $labels "instance" }} has exceeded 80% for the last 5 minutes
```

**nota**  
Si utiliza una condición clásica, `$labels` no contendrá ninguna etiqueta de la consulta. Las condiciones clásicas descartan estas etiquetas para aplicar un comportamiento unidimensional (como máximo una alerta por regla de alerta). Si quiere utilizar las etiquetas de la consulta en la plantilla, siga el ejemplo anterior *Impresión de todas las etiquetas a partir de una condición clásica*.

### Valor de la variable
<a name="v10-alerting-overview-labels-templating-the-value-variable"></a>

La variable `$value` es una cadena que contiene las etiquetas y los valores de todas las consultas instantáneas, las expresiones de umbral, reducción y matemáticas, así como las condiciones clásicas de la regla de alerta. No contiene los resultados de las consultas de rango, ya que pueden devolver entre 10 y 10 000 filas o métricas. Si lo hiciera, para consultas especialmente grandes, una sola alerta podría consumir decenas de segundos MBs de memoria y Grafana se quedaría sin memoria muy rápidamente.

Para imprimir la variable `$value` en el resumen, escribiría algo como esto: 

```
CPU usage for {{ index $labels "instance" }} has exceeded 80% for the last 5 minutes: {{ $value }}
```

Y tendría un aspecto similar al siguiente:

```
CPU usage for instance1 has exceeded 80% for the last 5 minutes: [ var='A' labels={instance=instance1} value=81.234 ]
```

Aquí `var='A'` se refiere a la consulta instantánea con el identificador de referencia A, `labels={instance=instance1}` se refiere a las etiquetas y `value=81.234` al uso medio de la CPU en los últimos 5 minutos.

Si quiere imprimir solo una parte de la cadena en lugar de la cadena completa, utilice la variable `$values`. Contiene la misma información que `$value`, pero en una tabla estructurada, y es mucho más fácil de usar que escribir una expresión regular para que coincida solo con el texto deseado.

### Variable de valores
<a name="v10-alerting-overview-labels-templating-the-values-variable"></a>

La `$values` variable es una tabla que contiene las etiquetas y los valores de punto flotante de todas las consultas y expresiones instantáneas, indexadas por su referencia. IDs

Para imprimir el valor de la consulta instantánea con el RefID A:

```
CPU usage for {{ index $labels "instance" }} has exceeded 80% for the last 5 minutes: {{ index $values "A" }}
```

Por ejemplo, en el caso de una alerta con las etiquetas `instance=server1` y una consulta instantánea con el valor `81.2345`, imprimiría:

```
CPU usage for instance1 has exceeded 80% for the last 5 minutes: 81.2345
```

Si la consulta en el ID de referencia A es una consulta de rango en lugar de una consulta instantánea, agregue una expresión de reducción con el ID de referencia B y sustituya `(index $values "A")` por `(index $values "B")`:

```
CPU usage for {{ index $labels "instance" }} has exceeded 80% for the last 5 minutes: {{ index $values "B" }}
```

## Funciones
<a name="v10-alerting-overview-labels-templating-functions"></a>

Las siguientes funciones están disponibles al crear plantillas de etiquetas y anotaciones:

**args**

La función `args` traduce una lista de objetos a un mapa con las claves arg0, arg1, etc. El objetivo es permitir que se pasen varios argumentos a las plantillas.

```
{{define "x"}}{{.arg0}} {{.arg1}}{{end}}{{template "x" (args 1 "2")}}
```

```
1 2
```

**externalURL**

La función `externalURL` devuelve la URL externa del servidor Grafana.

```
{{ externalURL }}
```

```
https://example.com/grafana
```

**graphLink**

La función `graphLink` devuelve la ruta a la vista gráfica en [Explore en la versión 10 de Grafana](v10-explore.md) para la expresión y el origen de datos indicados.

```
{{ graphLink "{\"expr\": \"up\", \"datasource\": \"gdev-prometheus\"}" }}
```

```
/explore?left=["now-1h","now","gdev-prometheus",{"datasource":"gdev-prometheus","expr":"up","instant":false,"range":true}]
```

**humanize**

La función `humanize` humaniza los números decimales.

```
{{ humanize 1000.0 }}
```

```
1k
```

**humanize1024**

`humanize1024` funciona de manera similar a `humanize`, pero usa 1024 como base en lugar de 1000.

```
{{ humanize1024 1024.0 }}
```

```
1ki
```

**humanizeDuration**

La función `humanizeDuration` humaniza una duración en segundos.

```
{{ humanizeDuration 60.0 }}
```

```
1m 0s
```

**humanizePercentage**

La función `humanizePercentage` humaniza un valor de relación en porcentaje.

```
{{ humanizePercentage 0.2 }}
```

```
20%
```

**humanizeTimestamp**

La función `humanizeTimestamp` humaniza una marca de tiempo Unix.

```
{{ humanizeTimestamp 1577836800.0 }}
```

```
2020-01-01 00:00:00 +0000 UTC
```

**match**

La función `match` hace coincidir el texto con un patrón de expresión regular.

```
{{ match "a.*" "abc" }}
```

```
true
```

**pathPrefix**

La función `pathPrefix` devuelve la ruta del servidor Grafana.

```
{{ pathPrefix }}
```

```
/grafana
```

**tableLink**

La función `tableLink` devuelve la ruta a la vista tabular en [Explore en la versión 10 de Grafana](v10-explore.md) para la expresión y el origen de datos indicados.

```
{{ tableLink "{\"expr\": \"up\", \"datasource\": \"gdev-prometheus\"}" }}
```

```
/explore?left=["now-1h","now","gdev-prometheus",{"datasource":"gdev-prometheus","expr":"up","instant":true,"range":false}]
```

**title**

La función `title` pone en mayúscula el primer carácter de cada palabra.

```
{{ title "hello, world!" }}
```

```
Hello, World!
```

**toLower**

La función `toLower` devuelve todo el texto en minúsculas.

```
{{ toLower "Hello, world!" }}
```

```
hello, world!
```

**toUpper**

La función `toUpper` devuelve todo el texto en mayúsculas.

```
{{ toUpper "Hello, world!" }}
```

```
HELLO, WORLD!
```

**reReplaceAll**

La función `reReplaceAll` reemplaza el texto que coincide con la expresión regular.

```
{{ reReplaceAll "localhost:(.*)" "example.com:$1" "localhost:8080" }}
```

```
example.com:8080
```

# Acerca de las reglas de alertas
<a name="v10-alerting-explore-rules"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Una regla de alertas es un conjunto de criterios de evaluación que determina si se iniciará una instancia de alertas. La regla consta de una o más consultas y expresiones, una condición, la frecuencia de la evaluación y el tiempo durante el cual debe cumplirse la condición para que comience a activarse.

Mientras que las consultas y las expresiones seleccionan el conjunto de datos que se va a evaluar, una *condición* establece el umbral que los datos deben alcanzar o superar para crear una alerta.

Un *intervalo* especifica la frecuencia con la que se evalúa una regla de alertas. La *duración*, cuando se configura, indica durante cuánto tiempo debe cumplirse una condición. Las reglas de alertas también pueden definir el comportamiento de las alertas en ausencia de datos.

**Topics**
+ [Tipos de reglas de alertas](v10-alerting-explore-rules-types.md)
+ [Reglas de registros](v10-alerting-explore-rule-recording.md)
+ [Consultas y condiciones](v10-alerting-explore-rules-queries.md)
+ [Instancias de alerta](v10-alerting-rules-instances.md)
+ [Espacios de nombres, carpetas y grupos](v10-alerting-rules-grouping.md)
+ [Evaluación de la regla de alerta](v10-alerting-rules-evaluation.md)
+ [Estado de las reglas de alerta](v10-alerting-explore-state.md)
+ [Plantillas de notificaciones](v10-alerting-rules-notification-templates.md)

# Tipos de reglas de alertas
<a name="v10-alerting-explore-rules-types"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Grafana admite varios tipos de reglas de alerta. Obtenga más información sobre cada uno de los tipos de reglas de alertas, cómo funcionan y decida cuál es la mejor para su caso de uso.

## Reglas administradas por Grafana
<a name="v10-alerting-explore-rule-types-grafana"></a>

Las reglas administradas por Grafana son el tipo de regla de alertas más flexible. Le permiten crear alertas que pueden actuar sobre los datos de los orígenes de datos existentes.

Además de admitir varios orígenes de datos, puede agregar [expresiones](v10-panels-query-xform-expressions.md) para transformar los datos y establecer condiciones de alerta.

En alertas administradas por Grafana:
+ Las reglas de alertas se crean en Grafana, en función de un origen de datos o varios.
+ Desde Grafana, el motor de evaluación evalúa las reglas de alertas.
+ Las alertas se envían mediante el Grafana Alertmanager interno.

**nota**  
También puede configurar las alertas para que se envíen mediante un administrador de alertas externo o utilizar Alertmanagers internos y externos. Para más información, consulte [Adición de un Alertmanager externo](v10-alerting-setup-alertmanager.md).

## Reglas administradas por orígenes de datos
<a name="v10-alerting-explore-rule-types-datasource"></a>

Para crear reglas de alertas administradas por orígenes de datos, debe tener un origen de datos de Prometheus o Loki compatible. Para poder comprobar si el origen de datos admite la creación de reglas a través de Grafana, pruebe el origen de datos y observe si la API de reglas es compatible.

En las alertas administradas por orígenes de datos:
+ Las reglas de alertas se crean y almacenan en el propio origen de datos.
+ Las reglas de alertas solo se pueden crear en función de los datos de Prometheus.
+ La evaluación y la entrega de las reglas de alertas se distribuyen en varios nodos para garantizar una alta disponibilidad y tolerancia a los errores.

## Elección de un tipo de regla de alertas
<a name="v10-alerting-explore-rule-types-choose"></a>

Al elegir qué tipo de regla de alertas utilizar, tenga en cuenta la siguiente comparación entre las reglas de alertas administradas por Grafana y las reglas de alertas administradas por el origen de datos.


| Característica | Regla de alerta administrada por Grafana | Regla de alerta administrada por Loki o Mimir | 
| --- | --- | --- | 
| Creación de reglas de alertas en función de datos de cualquiera de nuestros orígenes de datos compatibles | Sí | No: solo puede crear reglas de alertas en función de los datos de Prometheus. El origen de datos debe tener habilitada la API de reglas.  | 
| Combinación y coincidencia de orígenes de datos | Sí | No | 
| Compatibilidad para reglas de registros | No | Sí | 
| Adición de expresiones para transformar los datos y establecer condiciones de alertas | Sí | No | 
| Uso de imágenes en las notificaciones de alertas | Sí | No | 
| Escalado | Consumen más recursos, dependen de la base de datos y es probable que sufran errores transitorios. Solo se escalan verticalmente. | Guarde las reglas de alertas en el propio origen de datos y permita una escalabilidad “infinita”. Genere y envíe notificaciones de alerta desde la ubicación de los datos. | 
| Evaluación y entrega de reglas de alertas | La evaluación y la entrega de las reglas de alertas se llevan a cabo desde Grafana, mediante un administrador de alertas externo o ambos. | La evaluación de las reglas de alertas y la entrega de alertas están distribuidas, lo que significa que no hay un punto único de error. | 

# Reglas de registros
<a name="v10-alerting-explore-rule-recording"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

*Las reglas de registros solo están disponibles para los orígenes de datos de Prometheus o Loki compatibles*.

Una regla de registros permite precalcular expresiones que se necesitan con frecuencia o que son costosas desde el punto de vista computacional y guardar su resultado como un nuevo conjunto de series temporales. Resulta útil si quiere ejecutar alertas sobre datos agregados o si tiene paneles que consultan de manera repetitiva expresiones costosas desde el punto de vista computacional.

La consulta de esta nueva serie temporal es más rápida, especialmente en el caso de los paneles, ya que consultan la misma expresión cada vez que se actualizan.

Consulte más información sobre las [reglas de registros](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/) en Prometheus.

# Consultas y condiciones
<a name="v10-alerting-explore-rules-queries"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

En Grafana, las consultas desempeñan un papel fundamental a la hora de obtener y transformar datos de fuentes de datos compatibles, que incluyen bases de datos como MySQL y PostgreSQL, bases de datos de series temporales como Prometheus, InfluxDB y Graphite, y servicios como Amazon, Azure Monitor y Google Cloud Monitoring. OpenSearch CloudWatch

Para obtener más información sobre los orígenes de datos admitidos, consulte [Orígenes de datos y Grafana Alerting](v10-alerting-overview-datasources.md).

El proceso de ejecución de una consulta implica definir el origen de datos, especificar los datos que se desean recuperar y aplicar los filtros o transformaciones pertinentes. Para crear estas consultas, se utilizan lenguajes de consulta o sintaxis específicos del origen de datos elegido.

En Alertas, se define una consulta para obtener los datos que quiere medir y una condición que debe cumplirse antes de que se active una regla de alertas.

Una regla de alertas consta de una o más consultas y expresiones que seleccionan los datos que se quieren medir.

Para obtener más información sobre las consultas y expresiones, consulte [Consulta y transformación de los datos](v10-panels-query-xform.md).

## Consultas al origen de datos
<a name="v10-alerting-explore-rules-queries-data-source-queries"></a>

Las consultas en Grafana se pueden aplicar de varias maneras, según el origen de datos y el lenguaje de consulta que se utilice. El editor de consultas de cada origen de datos proporciona una interfaz de usuario personalizada que le ayuda a escribir consultas que aprovechen sus capacidades únicas.

Debido a las diferencias entre los lenguajes de consulta, cada editor de consultas de orígenes de datos tiene un aspecto y un funcionamiento diferentes. Según el origen de datos, el editor de consultas puede proporcionar características de autocompletado, nombres de métricas, sugerencias de variables o una interfaz visual de creación de consultas.

Entre algunos de los tipos comunes de componentes de consulta se incluyen los siguientes: 

**Métricas o campos de datos**: indique las métricas o los campos de datos específicos que quiere recuperar, como el uso de la CPU, el tráfico de red o las lecturas de los sensores.

**Intervalo de tiempo**: defina el intervalo de tiempo para obtener datos, como la última hora, un día específico o un intervalo de tiempo personalizado.

**Filtros**: aplique los filtros para restringir los datos en función de criterios específicos, como filtrar los datos por una etiqueta, un host o una aplicación específicos.

**Agregaciones**: haga agregaciones de los datos para calcular métricas como promedios, sumas o recuentos durante un periodo determinado.

**Agrupación**: agrupe los datos por dimensiones o etiquetas específicas para crear vistas agregadas o desgloses.

**nota**  
Grafana no admite consultas de alertas con variables de plantilla. Hay más información disponible [aquí](https://community.grafana.com/t/template-variables-are-not-supported-in-alert-queries-while-setting-up-alert/2514) en los foros de Grafana Labs.

## Consultas de expresiones
<a name="v10-alerting-explore-rules-queries-expression-queries"></a>

En Grafana, una expresión se utiliza para hacer cálculos, transformaciones o agregaciones de los datos consultados del origen de datos. Le permite crear métricas personalizadas o modificar las métricas existentes en función de operaciones matemáticas, funciones o expresiones lógicas.

Al aprovechar las consultas de expresión, los usuarios pueden hacer tareas como calcular el cambio porcentual entre dos valores, aplicar funciones como las funciones logarítmicas o trigonométricas, agregar datos en intervalos de tiempo o dimensiones específicos e implementar la lógica condicional para gestionar diferentes escenarios.

En Alertas, solo puede utilizar expresiones para las reglas de alertas administradas por Grafana. Para cada expresión, puede elegir expresiones matemáticas, reducir y volver a muestrear. Se denominan reglas multidimensionales porque generan una alerta independiente para cada serie.

También puede utilizar una condición clásica, que crea una regla de alertas que activa una sola alerta cuando se cumple su condición. Como resultado, Grafana envía una sola alerta incluso cuando se cumplen las condiciones de alerta para varias series.

**nota**  
Las condiciones clásicas existen principalmente por motivos de compatibilidad y, si es posible, deben evitarse.

**Reducir**

Agrega los valores de las series temporales del intervalo de tiempo seleccionado en un solo valor.

**Matemático**

Realiza operaciones matemáticas de formato libre a partir de series temporales y datos numéricos. functions/operations Se puede utilizar para preprocesar los datos de serie temporal o para definir una condición de alerta para datos numéricos.

**Remuestreo**

Realinea un intervalo de tiempo con un nuevo conjunto de marcas temporales, lo que resulta útil cuando se comparan datos de serie temporal de distintos orígenes de datos en los que, de otro modo, las marcas temporales no se alinearían.

**Threshold**

Comprueba si los datos de serie temporal coinciden con la condición de umbral.

La expresión de umbral permite comparar dos valores individuales. Devuelve `0` cuando la condición es falsa y `1` si es verdadera. Ahora están disponibles las siguientes funciones de umbrales:
+ Está por encima de (x > y)
+ Está por debajo de (x < y)
+ Está en el intervalo de (x > y1 Y x < y2)
+ Está fuera del intervalo de (x < y1 Y x > y2)

**Condición clásica**

Comprueba si los datos de serie temporal coinciden con la condición de alerta.

**nota**  
Las consultas de expresiones de condición clásicas siempre generan solo una instancia de alertas, independientemente del número de series temporales que cumplan la condición. Las condiciones clásicas existen principalmente por motivos de compatibilidad y, si es posible, deben evitarse.

## Agregaciones
<a name="v10-alerting-explore-rules-queries-aggregations"></a>

Grafana Alerting proporciona las siguientes funciones de agregación para que pueda refinar aún más la consulta.

Estas funciones solo están disponibles para las expresiones **Reducir** y **Condición clásica**.


| Función | Expression | ¿Qué hace? | 
| --- | --- | --- | 
| avg | Reducir/Clásico | Muestra el promedio de los valores | 
| min | Reducir/Clásico | Muestra el valor más bajo | 
| max | Reducir/Clásico | Muestra el valor más alto | 
| sum | Reducir/Clásico | Muestra la suma de todos los valores | 
| count | Reducir/Clásico | Cuenta el número de valores en el resultado | 
| last | Reducir/Clásico | Muestra el último valor | 
| median | Reducir/Clásico | Muestra el valor medio | 
| diferencia | Classic | Muestra la diferencia entre el valor más reciente y el más antiguo | 
| diff\$1abs | Classic | Muestra el valor absoluto de diff | 
| percent\$1diff | Classic | Muestra el valor porcentual de la diferencia entre el valor más reciente y el más antiguo | 
| percent\$1diff\$1abs | Classic | Muestra el valor absoluto de percent\$1diff | 
| count\$1non\$1null | Classic | Muestra un recuento de los valores del conjunto de resultados que no son null | 

## Condición de alerta
<a name="v10-alerting-explore-rules-queries-alert-condition"></a>

Una condición de alerta es la consulta o expresión que determina si la alerta se activará o no en función del valor que arroje. Solo puede haber una condición que determine la activación de la alerta.

Una vez definidas las and/or expresiones de las consultas, elija una de ellas como condición de la regla de alerta.

Cuando los datos consultados cumplen la condición definida, Grafana activa la alerta asociada, que se puede configurar para enviar notificaciones a través de varios canales como el correo electrónico, Slack o. PagerDuty Las notificaciones le informan acerca de la condición que se cumple, lo que le permite tomar las medidas adecuadas o investigar el problema subyacente.

De forma predeterminada, la última expresión agregada se utiliza como condición de alertas.

## Umbral de recuperación
<a name="v10-alerting-explore-rules-queries-recovery-threshold"></a>

Para reducir el exceso de alertas fluctuantes, puede establecer un umbral de recuperación diferente del umbral de alertas.

Las alertas fluctuantes se producen cuando una métrica se sitúa cerca de la condición de umbral de alerta y pueden provocar cambios de estado frecuentes, lo que provoca que se generen demasiadas notificaciones.

Las reglas de alerta administradas por Grafana se evalúan durante un intervalo de tiempo específico. Durante cada evaluación, el resultado de la consulta se compara con el umbral establecido en la regla de alertas. Si el valor de una métrica supera el umbral, se activa una regla de alerta y se envía una notificación. Cuando el valor cae por debajo del umbral y hay una alerta activa para esta métrica, la alerta se resuelve y se envía otra notificación.

Crear una regla de alerta para una métrica inestable puede resultar complicado. Es decir, cuando el valor de una métrica está continuamente por encima y por debajo de un umbral. Esto se denomina fluctuación y da como resultado una serie de notificaciones de activación (resueltas) y un historial de estados de alertas inestables.

Por ejemplo, si tiene una alerta de latencia con un umbral de 1000 ms y el número fluctúa alrededor de 1000 (por ejemplo, 980 ->1010 -> 990 -> 1020, etc.), cada una de ellas activará una notificación.

Para solucionar este problema, puede establecer un umbral de recuperación (personalizado), que básicamente significa tener dos umbrales en lugar de uno. Se activa una alerta cuando se cruza el primer umbral y se resuelve únicamente cuando se cruza el segundo umbral.

Por ejemplo, puede establecer un umbral de 1000 ms y un umbral de recuperación de 900 ms. De esta manera, una regla de alertas solo dejará de activarse cuando esté por debajo de los 900 ms y se reduzca la fluctuación.

# Instancias de alerta
<a name="v10-alerting-rules-instances"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las alertas administradas por Grafana admiten alertas multidimensionales. Cada regla de alerta puede crear varias instancias de alerta. Esto resulta eficaz si se observan varias series en una sola expresión.

Considere la siguiente expresión de PromQL:

```
sum by(cpu) (
  rate(node_cpu_seconds_total{mode!="idle"}[1m])
)
```

Una regla que utilice esta expresión creará tantas instancias de alerta como la cantidad que CPUs observemos después de la primera evaluación, lo que permitirá que una sola regla informe del estado de cada CPU.

# Espacios de nombres, carpetas y grupos
<a name="v10-alerting-rules-grouping"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las alertas se pueden organizar mediante carpetas para reglas administradas por Grafana y espacios de nombres para reglas y nombres de grupos de Mimir, Loki o Prometheus.

**Espacios de nombres y carpetas**

Al crear reglas administradas por Grafana, la carpeta se puede usar para llevar a cabo el control de acceso y concederlo o denegarlo a todas las reglas de una carpeta específica.

Un espacio de nombres contiene uno o varios grupos. Las reglas de un grupo se ejecutan secuencialmente a intervalos regulares. El intervalo predeterminado es de un minuto. Puede cambiar el nombre de los espacios de nombres y grupos de reglas de Grafana Mimi o Loki, y editar los intervalos de evaluación de los grupos.

**Grupos**

Las reglas de un grupo se ejecutan secuencialmente a intervalos periódicos, lo que significa que no se evaluará ninguna regla al mismo tiempo y por orden de aparición. El intervalo predeterminado es de un minuto. Puede cambiar el nombre de los espacios de nombres de las reglas de Grafana Mimir o Loki o de los espacios de nombres y grupos de reglas de Loki, y editar los intervalos de evaluación de los grupos.

**sugerencia**  
Si desea que las reglas se evalúen de forma simultánea y con intervalos diferentes, considere de guardarlas en grupos diferentes.

**nota**  
Las reglas de alerta administradas por Grafana se evalúan de forma simultánea en lugar de secuencial.

# Evaluación de la regla de alerta
<a name="v10-alerting-rules-evaluation"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Utilice la evaluación de las reglas de alertas para determinar con qué frecuencia debe evaluarse una regla de alertas y con qué rapidez debe cambiar su estado.

Para ello, debe asegurarse de que la regla de alertas se encuentra en el grupo de evaluación correcto y establecer un periodo de tiempo pendiente que se adapte mejor a su caso de uso.

## Grupo de evaluación
<a name="v10-alerting-rules-evaluation-group"></a>

Cada regla de alerta forma parte de un grupo de evaluación. Cada grupo de evaluación contiene un intervalo de evaluación que determina la frecuencia con la que se comprueba la regla de alerta.

Las reglas de alerta **administradas por un origen de datos** del mismo grupo se evalúan una tras otra, mientras que las reglas de alerta de diferentes grupos se pueden evaluar simultáneamente. Esta característica resulta especialmente útil cuando se quiere garantizar que las reglas de registro se evalúen antes que cualquier regla de alerta.

Las reglas de alerta **administradas por Grafana** se evalúan al mismo tiempo, independientemente del grupo. El intervalo de evaluación predeterminado se establece en 10 segundos, lo que significa que las reglas de alerta administradas por Grafana se evalúan cada 10 segundos hasta la ventana de 10 segundos más cercana del reloj, por ejemplo, 10:00:00, 10:00:10, 10:00:20, etc. También puede configurar su propio intervalo de evaluación, si es necesario.

**nota**  
Los grupos de evaluación y la agrupación de alertas en las políticas de notificación son dos cosas distintas. La agrupación en las políticas de notificación permite enviar varias alertas que comparten las mismas etiquetas en el mismo mensaje de tiempo.

## Periodo pendiente
<a name="v10-alerting-rules-evaluation-pending-period"></a>

Al establecer un periodo pendiente, puede evitar alertas innecesarias por problemas temporales.

En el periodo pendiente, se selecciona el periodo en el que una regla de alerta puede infringir la condición hasta que se activa.

**Ejemplo**

Imagine que hay un intervalo de evaluación de la regla de alerta establecido cada 30 segundos y el periodo pendiente en 90 segundos.

La evaluación se hará de la siguiente manera:

[00:30] Primera evaluación: condición no cumplida.

[01:00] Segunda evaluación: condición infringida. El contador pendiente se inicia. **La alerta comienza como pendiente**.

[01:30] Tercera evaluación: condición infringida. Contador pendiente = 30 s. **Estado pendiente.**

[02:00] Cuarta evaluación: condición infringida. Contador pendiente = 60 s. **Estado pendiente**.

[02:30] Quinta evaluación: condición infringida. Contador pendiente = 90 s. **La alerta comienza a activarse**

Si la regla de alerta tiene una condición que debe infringirse durante un periodo determinado antes de actuar, su estado cambia de la siguiente manera:
+ Cuando se infringe la condición por primera vez, la regla pasa a un estado “pendiente”.
+ La regla permanece en el estado “pendiente” hasta que se haya infringido la condición durante el periodo requerido (periodo pendiente).
+ Una vez transcurrido el tiempo requerido, la regla pasa a un estado de “activación”.
+ Si la condición deja de infringirse durante el periodo pendiente, la regla vuelve a su estado normal.

**nota**  
Si quiere omitir el estado pendiente, simplemente puede establecer el periodo pendiente en 0. De esta forma, se omite el periodo pendiente y la regla de alerta empezará a activarse en cuanto se infrinja la condición.

Cuando se activa una regla de alerta, se generan instancias de alerta que, a continuación, se envían al Alertmanager.

# Estado de las reglas de alerta
<a name="v10-alerting-explore-state"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

El estado de las reglas de alerta ayuda a comprender varios indicadores clave del estado de las alertas.

Hay tres componentes clave: *estado de regla de alerta*, *estado de instancia de alerta* e *integridad de regla de alerta*. Aunque están relacionados, cada componente transmite información sutilmente diferente.

**Estado de la regla de alerta**

Una regla de alertas puede tener uno de los siguientes estados:


| Estado | Description (Descripción) | 
| --- | --- | 
| Normal | Ninguna de las series temporales devueltas por el motor de evaluación está en estado `Pending` o `Firing`. | 
| Pending (Pendiente) | Al menos una de las series temporales devueltas por el motor de evaluación está `Pending`. | 
| Activación | Al menos una de las series temporales devueltas por el motor de evaluación está `Firing`. | 

**nota**  
Las alertas pasarán primero a `pending` y después a `firing`, por lo que se necesitarán al menos dos ciclos de evaluación antes de que se active una alerta.

**Estado de instancia de alerta**

Una instancia de alerta puede tener uno de los siguientes estados:


| Estado | Description (Descripción) | 
| --- | --- | 
| Normal | Estado de una alerta que no está en activación ni pendiente, todo funciona correctamente. | 
| Pending (Pendiente) | Estado de una alerta que ha estado activa durante menos del tiempo umbral configurado. | 
| Alertas | Estado de una alerta que ha estado activa durante más del tiempo umbral configurado. | 
| NoData | No se ha recibido ningún dato del intervalo de tiempo configurado. | 
| Error | El error que se produjo al intentar evaluar una regla de alerta. | 

**Conservar último estado**

Se puede configurar una regla de alerta para mantener el último estado cuando se encuentre el estado `NoData` o `Error`. Esto evitará que las alertas se activen y que se resuelvan y se vuelvan a activar. Al igual que en una evaluación normal, la regla de alertas pasará de `Pending` a `Firing` una vez transcurrido el periodo pendiente.

**Estado de la regla de alerta**

Una regla de alerta puede tener uno de los siguientes estados:


| Estado | Description (Descripción) | 
| --- | --- | 
| Correcto | No hay ningún error al evaluar una regla de alerta. | 
| Error | Hubo un error al evaluar una regla de alerta. | 
| NoData | Ausencia de datos en al menos una serie temporal devuelta durante la evaluación de una regla. | 

**Alertas especiales de `NoData` y `Error`**

Cuando la evaluación de una regla de alerta devuelve el estado `NoData` o `Error`, Grafana Alerting generará instancias de alerta con las siguientes etiquetas adicionales:


| Etiqueta | Description (Descripción) | 
| --- | --- | 
| alertname | `DatasourceNoData` o `DatasourceError` según el estado. | 
| datasource\$1uid | UID del origen de datos que provocó el estado. | 

Para gestionar estas alertas de la misma manera que las alertas normales, agregue un silencio, diríjalas a un punto de contacto, etc.

# Plantillas de notificaciones
<a name="v10-alerting-rules-notification-templates"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las notificaciones enviadas a través de los puntos de contacto se crean mediante plantillas de notificaciones. Las plantillas predeterminadas de Grafana se basan en el [sistema de plantillas de Go](https://golang.org/pkg/text/template), en el que algunos campos se evalúan como texto, mientras que otros se evalúan como HTML (lo que puede afectar al escape).

La plantilla predeterminada [default\$1template.go](https://github.com/grafana/alerting/blob/main/templates/default_template.go) es una referencia útil para las plantillas personalizadas.

Como la mayoría de los campos de puntos de contacto pueden tener plantillas, puede crear plantillas personalizadas reutilizables y utilizarlas en varios puntos de contacto. Para obtener más información sobre las notificaciones personalizadas mediante plantillas, consulte [Personalización de las notificaciones](v10-alerting-manage-notifications.md).

**Plantillas anidadas**

Puede incrustar plantillas dentro de otras plantillas.

Por ejemplo, puede definir un fragmento de plantilla mediante la palabra clave `define`.

```
{{ define "mytemplate" }}
  {{ len .Alerts.Firing }} firing. {{ len .Alerts.Resolved }} resolved.
{{ end }}
```

A continuación, puede incrustar plantillas personalizadas en este fragmento mediante la palabra clave `template`. Por ejemplo:

```
Alert summary:
{{ template "mytemplate" . }}
```

Puede utilizar cualquiera de las siguientes opciones de plantilla integradas para incrustar plantillas personalizadas.


| Name | Notas | 
| --- | --- | 
| `default.title` | Muestra información general de estado. | 
| `default.message` | Proporciona un resumen con formato de las alertas que se están activando y que están resueltas. | 
| `teams.default.message` | Similar a `default.messsage`, formateado para Microsoft Teams. | 

**HTML en plantillas de notificaciones**

Se escapa el HTML de las plantillas de notificaciones de alertas. No se admite la representación de HTML en la notificación resultante.

Algunos notificadores admiten métodos alternativos para cambiar el aspecto de la notificación resultante. Por ejemplo, Grafana instala la plantilla base para enviar alertas de correo electrónico a `<grafana-install-dir>/public/emails/ng_alert_notification.html`. Puede editar este archivo para cambiar la apariencia de todos los correos electrónicos de alerta.

# Alertmanager
<a name="v10-alerting-explore-alertmanager"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Alertmanager le permite administrar y responder a las alertas de forma rápida y eficiente. Recibe alertas, gestiona los silenciamientos, las inhibiciones, la agrupación y el enrutamiento mediante el envío de notificaciones a través del canal que prefiera, por ejemplo, correo electrónico o Slack.

En Grafana, puede utilizar el Grafana Alertmanager o un Alertmanager externo. También puede ejecutar varios Alertmanagers. Su decisión dependerá de la configuración y del lugar donde se generen las alertas.

**Grafana Alertmanager**

Grafana Alertmanager es un administrador de alertas interno preconfigurado y disponible para su selección de manera predeterminada.

Grafana Alertmanager puede recibir alertas de Grafana, pero no puede recibir alertas de fuera de Grafana, por ejemplo, de Mimir o Loki.

**nota**  
Grafana Alertmanager no admite reglas de inhibición.

**Alertmanager externo**

Si quiere utilizar un único Alertmanager para recibir todas las alertas de Grafana, Loki, Mimir y Prometheus, puede configurar Grafana para utilizar un Alertmanager externo. Este administrador de alertas externo se puede configurar y administrar desde Grafana.

Estos son dos ejemplos de casos en los que quizás quiera configurar su propio Alertmanager externo y enviar sus alertas allí en lugar de Grafana Alertmanager:

1. Ya tiene Alertmanagers en las instalaciones en su propia infraestructura en la nube que ha configurado y aún quiere utilizar, porque tiene otros generadores de alertas, como Prometheus.

1. Quiere utilizar Prometheus en las instalaciones y Grafana alojado para enviar alertas al mismo Alertmanager que se ejecuta en su infraestructura en la nube.

Los administradores de alertas están visibles en el menú desplegable de las páginas Alertas, Puntos de contacto y Políticas de notificación.

Si va a aprovisionar el origen de datos, establezca la marca `handleGrafanaManagedAlerts` del campo `jsonData` en `true` para enviar alertas administradas por Grafana a este Alertmanager.

# Puntos de contacto
<a name="v10-alerting-explore-contacts"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Los puntos de contacto contienen la configuración para enviar notificaciones. Un punto de contacto es una lista de integraciones, cada una de las cuales envía una notificación a una dirección de correo electrónico, servicio o URL determinados. Los puntos de contacto pueden tener varias integraciones del mismo tipo o una combinación de integraciones de distintos tipos. Por ejemplo, un punto de contacto podría contener una integración de PagerDuty, una integración de Amazon SNS y Slack, o una integración de PagerDuty, una integración de Slack y dos integraciones de Amazon SNS. También puede configurar un punto de contacto sin integraciones, en cuyo caso no se enviarán notificaciones.

Un punto de contacto no puede enviar notificaciones hasta que se haya agregado a una política de notificaciones. Una política de notificaciones solo puede enviar alertas a un punto de contacto, pero se puede agregar un punto de contacto a varias políticas de notificación al mismo tiempo. Cuando una alerta coincide con una política de notificaciones, la alerta se envía al punto de contacto de esa política de notificaciones, que, a su vez, envía una notificación a cada integración de su configuración.

Los puntos de contacto se pueden configurar para Grafana Alertmanager, así como para los administradores de alertas externos.

También puede utilizar las plantillas de notificaciones para personalizar los mensajes de notificación según los tipos de puntos de contacto.

**Tipos de puntos de contacto compatibles**

En la siguiente tabla, se muestran los tipos de puntos de contacto de admitidos por Grafana.


| Name | Tipo | 
| --- | --- | 
| Amazon SNS | `sns` | 
| OpsGenie | `opsgenie` | 
| PagerDuty | `pagerduty` | 
| Slack | `slack` | 
| VictorOps | `victorops` | 

Para obtener más información acerca de los puntos de contacto, consulte [Configuración de puntos de contacto](v10-alerting-configure-contactpoints.md) y [Personalización de las notificaciones](v10-alerting-manage-notifications.md).

# Notificaciones
<a name="v10-alerting-explore-notifications"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Elegir cómo, cuándo y dónde enviar las notificaciones de alertas es una parte importante de la configuración del sistema de alertas. Estas decisiones tendrán un impacto directo en su capacidad para resolver los problemas rápidamente y no pasar por alto nada importante.

Como primer paso, defina los [puntos de contacto](v10-alerting-explore-contacts.md), que definen dónde enviar las notificaciones de alertas. Un punto de contacto es un conjunto de una o más integraciones que se utilizan para enviar notificaciones. Agregue plantillas de notificaciones a los puntos de contacto para reutilizarlas y enviar mensajes coherentes en las notificaciones.

A continuación, cree una política de notificaciones que sea un conjunto de reglas sobre dónde, cuándo y cómo se envían las alertas a los puntos de contacto. En una política de notificaciones, para definir dónde enviar las notificaciones de alerta, elija uno de los puntos de contacto que ha creado.

## Instancias de Alertmanager
<a name="v10-alerting-explore-notifications-alertmanager"></a>

Grafana utiliza Alertmanagers para enviar notificaciones de alertas resueltas y de activación. Grafana tiene su propio Alertmanager, denominado **Grafana** en la interfaz de usuario, pero también admite el envío de notificaciones desde otros Alertmanagers, como [Prometheus Alertmanager](https://prometheus.io/docs/alerting/latest/alertmanager/). Grafana Alertmanager utiliza políticas de notificación y puntos de contacto para configurar cómo y dónde se envía una notificación, con qué frecuencia debe enviarse una notificación y si las alertas deben enviarse todas en la misma notificación, en notificaciones agrupadas según un conjunto de etiquetas o como notificaciones independientes.

## Políticas de notificaciones
<a name="v10-alerting-explore-notifications-policies"></a>

Las políticas de notificaciones controlan cuándo y dónde se envían las notificaciones. Una política de notificaciones puede optar por enviar todas las alertas juntas en la misma notificación, enviar las alertas agrupadas en función de un conjunto de etiquetas o enviar las alertas como notificaciones independientes. Puede configurar cada política de notificaciones para controlar la frecuencia con la que se deben enviar las notificaciones, así como disponer de uno o varios temporizadores de silencio para evitar que se envíen notificaciones a horas del día determinadas y días de la semana determinados.

Las políticas de notificaciones se organizan en una estructura de árbol en la que, en la raíz del árbol, hay una política de notificaciones denominada política predeterminada. Solo puede haber una política predeterminada y no se puede eliminar.

Las políticas de enrutamiento específicas son secundarias a la política raíz y se pueden utilizar para coincidir con todas las alertas o un subconjunto de alertas en función de un conjunto de etiquetas coincidentes. Una política de notificaciones coincide con una alerta cuando sus etiquetas coincidentes coinciden con las etiquetas de la alerta.

Una política anidada puede tener sus propias políticas anidadas, que permiten una mayor coincidencia de alertas. Un ejemplo de política anidada podría ser el envío de alertas de infraestructura al equipo de operaciones, mientras que una política secundaria podría enviar alertas de alta prioridad a PagerDuty y alertas de baja prioridad a Slack.

Todas las alertas, independientemente de sus etiquetas, coinciden con la política predeterminada. Sin embargo, cuando la política predeterminada recibe una alerta, examina cada política anidada y envía la alerta a la primera política anidada que coincide con la alerta. Si la política anidada tiene más políticas anidadas, puede intentar establecer una coincidencia entre la alerta y una de sus políticas anidadas. Si ninguna política anidada coincide con la alerta, la política en sí es la política coincidente. Si no hay políticas anidadas o ninguna política anidada coincide con la alerta, la política predeterminada es la política coincidente.

Para obtener información más detallada acerca de las políticas de notificaciones, consulte [Políticas de notificaciones](v10-alerting-explore-notifications-policies-details.md).

## Plantillas de notificaciones
<a name="v10-alerting-explore-notifications-templating"></a>

Puede personalizar las notificaciones con plantillas. Por ejemplo, las plantillas se pueden utilizar para cambiar el título y el mensaje de las notificaciones que se envían a Slack.

Las plantillas no se limitan a una integración o punto de contacto individual, sino que se pueden utilizar en varias integraciones en el mismo punto de contacto e incluso en integraciones entre diferentes puntos de contacto. Por ejemplo, un usuario de Grafana puede crear una plantilla llamada `custom_subject_or_title` y utilizarla tanto para los temas de PagerDuty como para los títulos de los mensajes de Slack sin tener que crear dos plantillas independientes.

Todas las plantillas de notificaciones están escritas en el [lenguaje de plantillas de Go](https://pkg.go.dev/text/template) y se encuentran en la pestaña Puntos de contacto de la página Alertas.

Para obtener información más detallada acerca de la personalización de las notificaciones, consulte [Personalización de las notificaciones](v10-alerting-manage-notifications.md).

## Silencios
<a name="v10-alerting-explore-notifications-silences"></a>

Puede utilizar los silencios para silenciar las notificaciones de una o más reglas de activación. Los silencios no impiden que las alertas se activen o se resuelvan, ni ocultan las alertas de activación en la interfaz de usuario. Un silencio se mantiene durante el tiempo configurado, que puede ser en minutos, horas, días, meses o años.

Para obtener información más detallada acerca del uso de los silencios, consulte [Silenciamiento de las notificaciones de alertas](v10-alerting-silences.md).

# Políticas de notificaciones
<a name="v10-alerting-explore-notifications-policies-details"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las políticas de notificaciones le proporcionan una forma flexible de dirigir las alertas a varios receptores diferentes. Con los criterios de coincidencia de etiquetas, puede modificar la entrega de las notificaciones de alertas sin tener que actualizar cada regla de alerta individual.

En esta sección, se presenta más información sobre cómo funcionan y están estructuradas las políticas de notificaciones, de modo que pueda aprovechar al máximo la configuración de las políticas de notificaciones.

## Árbol de políticas
<a name="v10-alerting-explore-notifications-policy-tree"></a>

Las políticas de notificaciones *no* son una lista, sino que se estructuran según una estructura de árbol. Esto significa que cada política puede tener políticas secundarias, etc. La raíz del árbol de políticas de notificaciones se denomina **política de notificaciones predeterminada**.

Cada política se compone de un conjunto de criterios de coincidencia de etiquetas (0 o más) que especifican qué etiquetas quieren gestionar o no.

Para obtener más información sobre la coincidencia de etiquetas, consulte [Cómo funciona la búsqueda de coincidencias de etiquetas](v10-alerting-overview-labels-matching.md).

**nota**  
Si no ha configurado ningún criterio de coincidencia de etiquetas para la política de notificaciones, esta coincidirá con *todas* las instancias de alertas. Esto puede evitar que se evalúen las políticas secundarias, a menos que haya activado la opción **Continuar con la coincidencia del mismo nivel** en la política de notificaciones.

## Enrutamiento
<a name="v10-alerting-explore-notifications-routing"></a>

Para determinar qué política de notificaciones gestionará qué instancias de alertas, debe empezar por analizar el conjunto de políticas de notificaciones existente. La política de notificaciones predeterminada debe ser la primera.

Si no se configura ninguna política distinta de la política predeterminada, la política predeterminada gestionará la instancia de alertas.

Si se definen políticas distintas de la política predeterminada, evaluará esas políticas de notificaciones en el orden en que se muestran.

Si una política de notificaciones tiene criterios de coincidencia de etiquetas que coinciden con las etiquetas de la instancia de alertas, pasará a sus políticas secundarias y, si las hubiera, seguirá buscando políticas secundarias que puedan tener criterios de coincidencia de etiquetas que reduzcan aún más el conjunto de etiquetas, y así sucesivamente hasta que no se encuentren más políticas secundarias.

Si no se define ninguna política secundaria en una política de notificaciones o si ninguna de las políticas secundarias tiene criterios de coincidencia de etiquetas que coincidan con las etiquetas de la instancia de alertas, se utiliza la política de notificaciones principal.

En cuanto se encuentra una política coincidente, el sistema deja de buscar otras políticas coincidentes. Si quiere seguir buscando otras políticas que puedan coincidir, habilite **Continuar con la coincidencia del mismo nivel** en esa política concreta.

Por último, si no se selecciona ninguna de las políticas de notificaciones, se utilizará la política de notificaciones predeterminada.

### Enrutamiento de ejemplo
<a name="v10-alerting-explore-notifications-routing-example"></a>

A continuación, se muestra un ejemplo de un árbol de políticas de notificaciones relativamente simple y de algunas instancias de alertas.

![\[Imagen que muestra un conjunto de políticas de notificaciones en una estructura de árbol y un conjunto de instancias de alertas con distintas etiquetas para que coincidan con las políticas.\]](http://docs.aws.amazon.com/es_es/grafana/latest/userguide/images/notification-routing.png)


A continuación, se muestra un desglose de cómo se seleccionan estas políticas:

El **pod stuck in CrashLoop** no tiene `severity` etiqueta, por lo que ninguna de sus políticas para niños coincide. Tiene una etiqueta `team=operations`, por lo que la primera política coincide.

La política `team=security` no se evalúa porque ya hemos encontrado una coincidencia y la opción **Continuar con la coincidencia del mismo nivel** no está configurada para esa política.

**Uso del disco: 80 %** tiene una etiqueta `team` y `severity` y coincide con una política secundaria del equipo de operaciones.

**Entrada de registro no autorizada** tiene una etiqueta `team`, pero no coincide con la primera política (`team=operations`), ya que los valores no son los mismos, por lo que seguirá buscando y coincidirá con la política `team=security`. No tiene políticas secundarias, por lo que se ignora la etiqueta `severity=high` adicional.

## Herencia
<a name="v10-alerting-explore-notifications-inheritance"></a>

Las políticas secundarias, además de ser un concepto útil para enrutar las instancias de alertas, también heredan propiedades de su política principal. Esto también se aplica a cualquier política que sea secundaria a la política de notificaciones predeterminada.

Las políticas secundarias heredan las siguientes propiedades:
+ Punto de contacto
+ Opciones de agrupación
+ Opciones de temporización
+ Temporizadores de silencio

Una política individual puede sobrescribir cada una de estas propiedades si desea anular las propiedades heredadas.

Para heredar un punto de contacto de la política principal, déjelo en blanco. Para anular las opciones de agrupación heredadas, habilite **Anular agrupación**. Para anular las opciones de temporización heredadas, habilite **Anular temporizadores generales**.

### Ejemplo de herencia
<a name="v10-alerting-explore-notifications-inheritance-example"></a>

El siguiente ejemplo muestra cómo el árbol de políticas de notificaciones de nuestro ejemplo anterior permite que las políticas secundarias de `team=operations` hereden su punto de contacto.

De esta forma, podemos evitar tener que especificar el mismo punto de contacto varias veces para cada política secundaria.

![\[Una imagen que muestra un conjunto de políticas de notificaciones en una estructura de árbol, con puntos de contacto asignados a algunas de las políticas, pero algunas políticas secundarias heredan los puntos de contacto de sus políticas principales, en lugar de definir los suyos propios.\]](http://docs.aws.amazon.com/es_es/grafana/latest/userguide/images/notification-inheritance.png)


## Opciones de configuración adicionales
<a name="v10-alerting-explore-notifications-additional-configuration-options"></a>

### Agrupación
<a name="v10-alerting-explore-notifications-grouping"></a>

La agrupación es una característica importante de Grafana Alerting, ya que le permite agrupar las alertas relevantes en un número menor de notificaciones. Esto es especialmente importante si las notificaciones se envían a los primeros responsables, como los ingenieros de guardia, ya que recibir muchas notificaciones en un periodo corto puede resultar abrumador y, en algunos casos, puede afectar negativamente a la capacidad de los primeros responsables para responder a un incidente. Por ejemplo, pensemos en una interrupción importante en la que muchos de los sistemas están inactivos. En este caso, la agrupación puede marcar la diferencia entre recibir 1 llamada telefónica y 100 llamadas telefónicas.

Usted elige cómo se agrupan las alertas mediante la opción Agrupar por de una política de notificaciones. De manera predeterminada, las políticas de notificaciones de Grafana agrupan las alertas por regla de alertas mediante las etiquetas `alertname` y `grafana_folder` (ya que los nombres de las alertas no son únicos en varias carpetas). Si desea agrupar las alertas por algo distinto a la regla de alerta, cambie la agrupación por cualquier otra combinación de etiquetas.

#### Deshabilitación de grupos
<a name="v10-alerting-explore-notifications-disable-grouping"></a>

Si desea recibir cada alerta como una notificación independiente, agrupe según una etiqueta especial llamada `...`. Esto resulta útil cuando las alertas se envían a un sistema automatizado en lugar de a un primer responsable.

#### Un solo grupo para todas las alertas
<a name="v10-alerting-explore-notifications-a-single-group-for-all-alerts"></a>

Si desea recibir todas las alertas juntas en una sola notificación, deje en blanco la opción Agrupar por.

### Opciones de temporización
<a name="v10-alerting-explore-notifications-timing-options"></a>

Las opciones de temporización deciden la frecuencia con la que se envían las notificaciones para cada grupo de alertas. Hay tres temporizadores que debe conocer: espera grupal, intervalo grupal e intervalo de repetición.

#### Espera grupal
<a name="v10-alerting-explore-notifications-group-wait"></a>

La espera grupal es la cantidad de tiempo que Grafana espera antes de enviar la primera notificación de un nuevo grupo de alertas. Cuanto más larga sea la espera grupal, más tiempo tendrá para que lleguen otras alertas. Cuanto más corta sea la espera grupal, antes se enviará la primera notificación, pero se corre el riesgo de que se envíen notificaciones incompletas. Siempre debe elegir la espera grupal que mejor se adapte a su caso de uso.

**Valor predeterminado**: 30 segundos.

#### Intervalo grupal
<a name="v10-alerting-explore-notifications-group-interval"></a>

Una vez que se ha enviado la primera notificación para un nuevo grupo de alertas, Grafana inicia el temporizador de intervalos grupales. Esta es la cantidad de tiempo que Grafana espera antes de enviar notificaciones sobre cambios en el grupo. Por ejemplo, es posible que se haya agregado otra alerta de activación al grupo y que se haya resuelto una alerta existente. Si una alerta llegó demasiado tarde para incluirse en la primera notificación debido a la espera grupal, se incluirá en las notificaciones subsiguientes después del intervalo grupal. Una vez transcurrido el intervalo grupal, Grafana restablece el temporizador de intervalo grupal. Esto se repite hasta que no haya más alertas en el grupo, tras lo cual se elimina el grupo.

**Valor predeterminado**: 5 minutos

#### Intervalo de repetición
<a name="v10-alerting-explore-notifications-repeat-interval"></a>

El intervalo de repetición decide la frecuencia con la que se repiten las notificaciones si el grupo no ha cambiado desde la última notificación. Puede considerarlas como recordatorios de que algunas alertas siguen activándose. El intervalo de repetición está estrechamente relacionado con el intervalo grupal, lo que significa que el intervalo de repetición no solo debe ser mayor o igual que el intervalo grupal, sino que también debe ser un múltiplo del intervalo grupal. Si el intervalo de repetición no es un múltiplo del intervalo grupal, se convertirá en uno. Por ejemplo, si el intervalo grupal es de 5 minutos y el intervalo de repetición es de 9 minutos, el intervalo de repetición se redondeará al múltiplo de 5 más cercano, que es 10 minutos.

**Valor predeterminado**: 4 horas

# Alertas de alta disponibilidad
<a name="v10-alerting-explore-high-availability"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Amazon Managed Grafana se ha configurado para ofrecer alta disponibilidad, lo que incluye la ejecución de varias instancias en varias zonas de disponibilidad para cada espacio de trabajo que cree.

Grafana Alerting utiliza el modelo de Prometheus que separa la evaluación de las reglas de alertas de la entrega de notificaciones. En este modelo, la evaluación de las reglas de alertas se lleva a cabo en el generador de alertas y la entrega de notificaciones se lleva a cabo en el receptor de alertas. En Grafana Alerting, el generador de alertas es el Programador y el receptor es el Alertmanager.

Con las configuraciones de alta disponibilidad, todas las reglas de alertas se evalúan en todas las instancias. Puede pensar en la evaluación de las reglas de alerta como si estuviera duplicada. Así es como Grafana Alerting garantiza que, mientras funcione al menos una instancia de Grafana, se seguirán evaluando las reglas de alertas y se seguirán enviando notificaciones de alertas. Verá esta duplicación en el historial del estado y es una buena manera de saber si utiliza la alta disponibilidad.

# Configuración de alertas
<a name="v10-alerting-setup"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Configure las características e integraciones que necesita para crear y administrar las alertas.

**Requisitos previos**

Antes de configurar las alertas, debe hacer lo siguiente.
+ Configure los [orígenes de datos](AMG-data-sources.md).
+ Asegúrese de que el origen de datos que elija sea compatible con [Grafana Alerting](v10-alerting-overview-datasources.md).

**Configuración de alertas**

1. Configure las [reglas de alerta](v10-alerting-configure.md).
   + Cree reglas de alerta y registro administradas por Grafana o por el origen de datos.

1. Configure los [puntos de contacto](v10-alerting-configure-contactpoints.md).
   + Compruebe el punto de contacto predeterminado y actualice el contacto para el sistema.
   + Si lo desea, agregue nuevos puntos de contacto e integraciones.

1. Configuración de [políticas de notificación](v10-alerting-explore-notifications-policies-details.md).
   + Compruebe la política de notificaciones predeterminada y actualícela para el sistema.
   + Si lo desea, agregue políticas anidadas adicionales.
   + Si lo desea, agregue etiquetas y comparadores de etiquetas para controlar el enrutamiento de las alertas.

Los siguientes temas le proporcionan más información sobre las opciones de configuración adicionales, incluida la configuración de administradores de alertas externos y el enrutamiento de las alertas administradas por Grafana fuera de Grafana.

**Topics**
+ [Migración de las alertas clásicas del panel de control a Grafana Alerting](v10-alerting-use-grafana-alerts.md)
+ [Adición de un Alertmanager externo](v10-alerting-setup-alertmanager.md)
+ [Aprovisionamiento de recursos de Grafana Alerting](v10-alerting-setup-provision.md)

# Migración de las alertas clásicas del panel de control a Grafana Alerting
<a name="v10-alerting-use-grafana-alerts"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Los espacios de trabajo que optan por no utilizar Grafana Alerting utilizan [Alertas clásicas del panel](old-alerts-overview.md). Para cambiar a la nueva característica de Grafana Alerting, antes debe registrarse en ella. Para ver detalles sobre las diferencias entre las alertas de panel clásicas y las alertas de Grafana, consulte. [Grafana Alerting en comparación con las alertas de panel antiguas](#v10-alerting-diff-old-new) GrafanaLabs ha anunciado que las alertas clásicas del panel de control se eliminarán en la versión 11.

Cuando utiliza las alertas clásicas del panel de control, Amazon Managed Grafana le muestra una vista previa de Grafana Alerting en la que puede revisar y modificar las alertas actualizadas antes de finalizar la actualización.

## Vista previa de las alertas de Grafana
<a name="v10-alerting-preview-grafana-alerts"></a>

Puede obtener una vista previa de las alertas en las alertas de Grafana antes de migrar. En la vista previa, puede hacer cambios en las alertas que cambiarán la migración.

**Vista previa de la migración de Grafana Alerting**

1. Inicie sesión en el espacio de trabajo de Grafana.

1. En el menú de la izquierda, elija **Alertas (antiguas)** para ver las alertas actuales.

1. En el menú de la izquierda, elija **Actualización de alertas** para verla en Grafana Alerting.

   Desde esta vista, puede ver el aspecto que tendrán las alertas tras la migración.

**nota**  
Desde esta vista, también puede hacer cambios que afecten a la migración. Para deshacer cualquier cambio que haga, elija **Restablecer actualización** en la parte superior derecha de la página de actualización.

Cuando tenga todo listo para actualizar las alertas, consulte la siguiente sección.

## Migración al sistema de Grafana Alerting
<a name="v10-alerting-use-grafana-alerts-opt-in"></a>

Puedes configurar tu instancia de Grafana gestionada por Amazon para que utilice las alertas de Grafana mediante la Consola de administración de AWS, la AWS CLI o la API de Grafana gestionada por Amazon. Para obtener más información sobre cómo configurar Amazon Managed Grafana, incluida la activación o desactivación de Grafana Alerting, consulte [Configuración de un espacio de trabajo de Amazon Managed Grafana](AMG-configure-workspace.md).

Cuando Grafana Alerting está activado, las alertas clásicas existentes del panel se migran en un formato compatible con Grafana Alerting. En la página Alertas de su instancia de Grafana, puede ver las alertas migradas junto con las alertas nuevas. Con Grafana Alerting, las reglas de alerta administradas por Grafana envían varias notificaciones en lugar de una sola alerta cuando coinciden.

El acceso de lectura y escritura a las alertas clásicas del panel y a las alertas de Grafana se rige por los permisos de las carpetas que las almacenan. Durante la migración, los permisos de las alertas clásicas del panel se comparan con los permisos de las nuevas reglas de la siguiente manera:
+ Si el panel de la alerta original tiene permisos, la migración crea una carpeta cuyo nombre sigue el formato `Migrated {"dashboardUid": "UID", "panelId": 1, "alertId": 1}` para que coincida con los permisos del panel original (incluidos los permisos heredados de la carpeta).
+ Si no hay permisos del panel y el panel está en una carpeta, la regla se vincula a esta carpeta y hereda sus permisos.
+ Si no hay permisos del panel y el panel está en la carpeta General, la regla se vincula a la carpeta General Alerting y hereda los permisos predeterminados.

**nota**  
Como en Grafana Alerting no hay ninguna opción `Keep Last State` para `NoData`, esta opción se convierte en `NoData` durante la migración de reglas clásicas. La opción `Keep Last State` para la gestión de `Error` se migra a una nueva opción `Error`. Para establecer coincidencias con el comportamiento de `Keep Last State`, en ambos casos, durante la migración, Amazon Managed Grafana crea automáticamente un silencio para cada regla de alerta con una duración de un año.

Los canales de notificación se migran a una configuración de Alertmanager con las rutas y los receptores adecuados. Los canales de notificación predeterminados se agregan como puntos de contacto a la ruta predeterminada. Los canales de notificación que no están asociados a ninguna alerta del panel van a la ruta `autogen-unlinked-channel-recv`.

### Limitaciones
<a name="v10-alerting-use-grafana-alerts-limitations"></a>
+ El sistema de Grafana Alerting puede recuperar reglas de todos los orígenes de datos disponibles de Prometheus, Loki y Alertmanager. Es posible que no pueda obtener las reglas de alerta de otros orígenes de datos compatibles.
+ La migración entre las alertas de Grafana y las alertas clásicas del panel puede provocar la pérdida de datos para las características compatibles con un sistema, pero no el otro.
**nota**  
Si vuelve a migrar a las alertas clásicas del panel de control, perderá todos los cambios aplicados en la configuración de alertas mientras tenía habilitado Grafana Alerting, incluidas las reglas de alerta nuevas que se hayan creado.

## Grafana Alerting en comparación con las alertas de panel antiguas
<a name="v10-alerting-diff-old-new"></a>

Grafana Alerting, que se presentó en Grafana 8, tiene varias mejoras con respecto a las alertas antiguas del panel.

### Alertas multidimensionales
<a name="v10-alerts-diff-multi-dimensional"></a>

Ahora puede crear alertas que le ofrecen visibilidad en todo el sistema con una sola regla de alerta. Genere varias instancias de alerta a partir de una única regla de alerta. Por ejemplo, puede crear una regla para supervisar el uso del disco de varios puntos de montaje de un único host. El motor de evaluación devuelve varias series temporales a partir de una sola consulta y cada serie temporal se identifica mediante su conjunto de etiquetas.

### Creación de alertas fuera de los paneles de control
<a name="v10-alerts-diff-alerts-outside-of-dashboards"></a>

A diferencia de las alertas de panel antiguas, las alertas de Grafana le permiten crear consultas y expresiones que combinan datos de varios orígenes de formas únicas. Puede seguir vinculando los paneles a las reglas de alerta mediante su ID y solucionar rápidamente los problemas del sistema que se encuentre en observación.

Como las alertas unificadas ya no están directamente vinculadas a las consultas de los paneles, no incluyen imágenes ni valores de consulta en el correo electrónico de notificación. Puede utilizar plantillas de notificación personalizadas para ver los valores de las consultas.

### Creación de reglas de alertas de Loki y Grafana Mimir
<a name="v10-alerts-diff-loki-mimir-alerting-rules"></a>

En Grafana Alerting, puede administrar las reglas de alerta de Loki y Grafana Mimir mediante la misma interfaz de usuario y API que las alertas administradas por Grafana.

### Visualización y búsqueda de alertas de orígenes de datos compatibles con Prometheus
<a name="v10-alerts-diff-view-alerts-from-prometheus"></a>

Las alertas de los orígenes de datos compatibles con Prometheus ahora se muestran en la sección de alertas de Grafana. Puede buscar etiquetas en varios orígenes de datos para encontrar rápidamente las alertas pertinentes.

### Alertas especiales sobre el estado de la alerta y el error NoData
<a name="v10-alerts-diff-special-alerts"></a>

Grafana Alerting introdujo un nuevo concepto de estados de alerta. Cuando la evaluación de una regla de alerta produce un estado NoData o un error, Grafana Alerting generará alertas especiales que tendrán las siguientes etiquetas:
+ `alertname`con valor DatasourceNoData o en DatasourceError función del estado.
+ `rulename` nombre de la regla de alerta a la que pertenece la alerta especial.
+ `datasource_uid` tendrá el UID del origen de datos que provocó el estado.
+ Todas las etiquetas y anotaciones de la regla de alerta original

Para gestionar estas alertas de la misma manera que las alertas normales, agregue un silencio, diríjalas a un punto de contacto, etc.

**nota**  
Si la regla utiliza muchos orígenes de datos y uno o varios no devuelven datos, se creará la alerta especial para cada origen de datos que provocó el estado de alerta.

# Adición de un Alertmanager externo
<a name="v10-alerting-setup-alertmanager"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Configure Grafana para usar un Alertmanager externo como el único Alertmanager que recibirá todas sus alertas. Luego, este administrador de alertas externo se podrá configurar y administrar desde Grafana.

**nota**  
No puede utilizar Amazon Managed Service para Prometheus como Alertmanager externo.

Una vez que haya agregado el administrador de alertas, puede usar la interfaz de usuario de Grafana Alerting para administrar los silencios, los puntos de contacto y las políticas de notificaciones. Una opción desplegable en estas páginas le permite cambiar entre los administradores de alertas.

Los Alertmanagers externos se configuran como orígenes de datos mediante la configuración de Grafana desde el menú de navegación principal de Grafana. Esto le permite administrar los puntos de contacto y las políticas de notificaciones de los administradores de alertas externos desde Grafana y también cifra las credenciales de autenticación básica HTTP que antes estaban visibles al configurar los administradores de alertas externos por URL.

**nota**  
A partir de Grafana 9.2, queda obsoleta la configuración de la URL de los Alertmanagers externos desde la pestaña Administración de la página Alertas. Se habilitará en una versión futura.

**Adición de un Alertmanager externo**

1. Elija **Conexiones** en el menú de la izquierda.

1. Busque la opción `Alertmanager`.

1. Elija el botón **Crear un nuevo origen de datos**.

1. Rellene los campos de la página según sea necesario.

   Si va a aprovisionar el origen de datos, establezca la marca `handleGrafanaManagedAlerts` del campo `jsonData` en `true` para enviar alertas administradas por Grafana a este Alertmanager.
**nota**  
Se admiten las implementaciones de Alertmanager de Prometheus, Grafana Mimir y Cortex. En el caso de Prometheus, los puntos de contacto y las políticas de notificaciones son solo de lectura en la interfaz de usuario de Grafana Alerting.

1. Elija **Guardar y probar**.

# Aprovisionamiento de recursos de Grafana Alerting
<a name="v10-alerting-setup-provision"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

La infraestructura de alertas suele ser compleja, ya que muchas partes de la canalización suelen estar en diferentes lugares. Escalar esta capacidad entre varios equipos y organizaciones es una tarea especialmente difícil. El aprovisionamiento de Grafana Alerting facilita este proceso al permitirle crear, administrar y mantener los datos de sus alertas de la manera que mejor se adapte a su organización.

Existen dos opciones entre las que elegir:

1. Aprovisionar sus recursos de alertas mediante la API HTTP de aprovisionamiento de alertas.
**nota**  
Por lo general, no puede editar las reglas de alerta aprovisionadas por la API desde la interfaz de usuario de Grafana.  
Para habilitar la edición, agrega el x-disable-provenance encabezado a las siguientes solicitudes al crear o editar tus reglas de alerta en la API:  

   ```
   POST /api/v1/provisioning/alert-rules
   PUT /api/v1/provisioning/alert-rules/{UID}
   ```

1. Aprovisionar los recursos de alertas con Terraform.

**nota**  
Actualmente, el aprovisionamiento de Grafana Alerting admite reglas de alerta, puntos de contacto, temporizadores de silencio y plantillas. Los recursos de alerta aprovisionados mediante el aprovisionamiento de archivos o Terraform solo se pueden editar en el origen que los creó y no desde Grafana ni desde ningún otro origen. Por ejemplo, si aprovisiona sus recursos de alerta mediante archivos del disco, no podrá editar los datos en Terraform ni en Grafana.

**Topics**
+ [Creación y administración de recursos de alertas con Terraform](v10-alerting-setup-provision-terraform.md)
+ [Visualización de los recursos de alerta aprovisionados en Grafana](v10-alerting-setup-provision-view.md)

# Creación y administración de recursos de alertas con Terraform
<a name="v10-alerting-setup-provision-terraform"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Use el proveedor de Grafana de Terraform para administrar sus recursos de alertas y aprovisionarlos en su sistema Grafana. La compatibilidad del proveedor de Terraform con Grafana Alerting facilita la creación, la administración y el mantenimiento de toda su pila de Grafana Alerting como código.

Para obtener más información sobre la administración de sus recursos de alertas mediante Terraform, consulte la documentación del [proveedor de Grafana](https://registry.terraform.io/providers/grafana/grafana/latest/docs) en la documentación de Terraform.

Complete las siguientes tareas para crear y administrar sus recursos de alertas con Terraform.

1. Cree una clave de API para el aprovisionamiento.

1. Configure el proveedor de Terraform.

1. Defina sus recursos de alerta en Terraform.

1. Ejecute `terraform apply` para aprovisionar sus recursos de alerta.

## Requisitos previos
<a name="v10-alerting-setup-provision-tf-prerequisites"></a>
+ Asegúrese de tener el [proveedor grafana/grafana Terraform](https://registry.terraform.io/providers/grafana/grafana/1.28.0) 1.27.0 o superior.
+ Compruebe que use Grafana 9.1 o posterior. Si creó su instancia de Amazon Managed Grafana con la versión 9 de Grafana, será verdadero.

## Creación de una clave de API para el aprovisionamiento
<a name="v10-alerting-setup-provision-tf-apikey"></a>

Puede [crear una clave de API de Grafana normal](Using-Grafana-APIs.md) para autenticar Terraform con Grafana. La mayoría de las herramientas existentes que utilizan claves de API deberían funcionar automáticamente con la nueva compatibilidad de Grafana Alerting. Para obtener información específica sobre la creación de claves para su uso con Terraform, consulte [Using Terraform for Amazon Managed Grafana automation](https://aws-observability.github.io/observability-best-practices/recipes/recipes/amg-automation-tf/).

**Creación de una clave de API para el aprovisionamiento**

1. Cree una nueva cuenta de servicio para su canalización de CI.

1. Asigne el rol “Acceder a la API de aprovisionamiento de las reglas de alerta”.

1. Cree un nuevo token para la cuenta de servicio.

1. Asigne un nombre al token y guárdelo para usarlo en Terraform.

También puede usar la autenticación básica. Para ver todos los formatos de autenticación compatibles, consulte [Grafana authentication](https://registry.terraform.io/providers/grafana/grafana/latest/docs#authentication) en la documentación de Terraform.

## Configuración del proveedor de Terraform
<a name="v10-alerting-setup-provision-tf-configure"></a>

La compatibilidad de Grafana Alerting se incluye como parte del [proveedor de Terraform de Grafana](https://registry.terraform.io/providers/grafana/grafana/latest/docs).

A continuación, se ofrece un ejemplo que puede usar para configurar el proveedor de Terraform.

```
terraform {
    required_providers {
        grafana = {
            source = "grafana/grafana"
            version = ">= 1.28.2"
        }
    }
}

provider "grafana" {
    url = <YOUR_GRAFANA_URL>
    auth = <YOUR_GRAFANA_API_KEY>
}
```

## Aprovisionamiento de puntos de contacto y plantillas
<a name="v10-alerting-setup-provision-tf-contacts"></a>

Los puntos de contacto conectan una pila de alertas con el mundo exterior. Indican a Grafana cómo conectarse a los sistemas externos y dónde enviar las notificaciones. Hay más de 15 [integraciones](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/contact_point#optional) diferentes entre las que elegir. En este ejemplo, se utiliza un punto de contacto de Slack.

**Aprovisionamiento de puntos de contacto y las plantillas**

1. Copie este bloque de código en un archivo .tf en su máquina local. *<slack-webhook-url>*Sustitúyelo por la URL del webhook de Slack (u otros detalles del punto de contacto).

   En este ejemplo, se crea un punto de contacto que envía notificaciones de alerta a Slack.

   ```
   resource "grafana_contact_point" "my_slack_contact_point" {
       name = "Send to My Slack Channel"
   
       slack {
           url = <slack-webhook-url>
           text = <<EOT
   {{ len .Alerts.Firing }} alerts are firing!
   
   Alert summaries:
   {{ range .Alerts.Firing }}
   {{ template "Alert Instance Template" . }}
   {{ end }}
   EOT
       }
   }
   ```

1. Ingrese el texto de la notificación en el campo de texto.

   El campo `text` admite [plantillas al estilo de Go](https://pkg.go.dev/text/template). Esto le permite administrar sus plantillas de notificaciones de Grafana Alerting directamente en Terraform.

1. Ejecute el comando `terraform apply`.

1. Vaya a la interfaz de usuario de Grafana y compruebe los detalles de su punto de contacto.

   No puede editar los recursos aprovisionados mediante Terraform desde la interfaz de usuario. Esto garantiza que su pila de alertas esté siempre sincronizada con su código.

1. Haga clic en **Probar** para verificar que el punto de contacto funciona correctamente.

**nota**  
Puede reutilizar las mismas plantillas en muchos puntos de contacto. En el ejemplo anterior, se incrusta una plantilla compartida mediante la instrucción `{{ template "Alert Instance Template" . }}`  
Luego, este fragmento se puede administrar por separado en Terraform:  

```
resource "grafana_message_template" "my_alert_template" {
    name = "Alert Instance Template"

    template = <<EOT
{{ define "Alert Instance Template" }}
Firing: {{ .Labels.alertname }}
Silence: {{ .SilenceURL }}
{{ end }}
EOT
}
```

## Aprovisionamiento de políticas de notificación y el enrutamiento
<a name="v10-alerting-setup-provision-tf-notifications"></a>

Las políticas de notificación le indican a Grafana cómo enrutar las instancias de alerta, en lugar de hacia dónde. Conectan las alertas de activación con los puntos de contacto previamente definidos mediante un sistema de etiquetas y criterios de coincidencia.

**Aprovisionamiento de políticas de notificación y enrutamiento**

1. Copie este bloque de código en un archivo .tf en su máquina local.

   En este ejemplo, las alertas se agrupan por `alertname`, lo que significa que cualquier notificación procedente de alertas que compartan el mismo nombre se agrupa en el mismo mensaje de Slack.

   Si quiere redirigir notificaciones específicas de forma diferente, puede agregar subpolíticas. Las subpolíticas le permiten aplicar el enrutamiento a diferentes alertas en función de la coincidencia de etiquetas. En este ejemplo, aplicamos un temporizador de silencio a todas las alertas con la etiqueta a=b.

   ```
   resource "grafana_notification_policy" "my_policy" {
       group_by = ["alertname"]
       contact_point = grafana_contact_point.my_slack_contact_point.name
   
       group_wait = "45s"
       group_interval = "6m"
       repeat_interval = "3h"
   
       policy {
           matcher {
               label = "a"
               match = "="
               value = "b"
           }
           group_by = ["..."]
           contact_point = grafana_contact_point.a_different_contact_point.name
           mute_timings = [grafana_mute_timing.my_mute_timing.name]
   
           policy {
               matcher {
                   label = "sublabel"
                   match = "="
                   value = "subvalue"
               }
               contact_point = grafana_contact_point.a_third_contact_point.name
               group_by = ["..."]
           }
       }
   }
   ```

1. En el campo mute\$1timings, vincule un temporizador de silencio con su política de notificaciones.

1. Ejecute el comando `terraform apply`.

1. Vaya a la interfaz de usuario de Grafana y compruebe los detalles de su política de notificaciones.
**nota**  
No puede editar los recursos aprovisionados mediante Terraform desde la interfaz de usuario. Esto garantiza que su pila de alertas esté siempre sincronizada con su código.

1. Haga clic en **Probar** para verificar que el punto de notificación funciona correctamente.

## Aprovisionamiento de temporizadores de silencio
<a name="v10-alerting-setup-provision-tf-mutetiming"></a>

Los temporizadores de silencio permiten silenciar las notificaciones de alerta durante periodos de tiempo definidos.

**Aprovisionamiento de temporizadores de silencio**

1. Copie este bloque de código en un archivo .tf en su máquina local.

   En este ejemplo, las notificaciones de alerta se silencian los fines de semana.

   ```
   resource "grafana_mute_timing" "my_mute_timing" {
       name = "My Mute Timing"
   
       intervals {
           times {
             start = "04:56"
             end = "14:17"
           }
           weekdays = ["saturday", "sunday", "tuesday:thursday"]
           months = ["january:march", "12"]
           years = ["2025:2027"]
       }
   }
   ```

1. Ejecute el comando `terraform apply`.

1. Vaya a la interfaz de usuario de Grafana y compruebe los detalles de su temporizador de silencio.

1. Use el campo `mute_timings` para hacer referencia al temporizador de silencio que acaba de crear en una política de notificaciones. De este modo, se aplicará el temporizador de silencio a algunas o a todas las notificaciones.
**nota**  
No puede editar los recursos aprovisionados mediante Terraform desde la interfaz de usuario. Esto garantiza que su pila de alertas esté siempre sincronizada con su código.

1. Haga clic en **Probar** para verificar que el temporizador de silencio funciona correctamente.

## Aprovisionamiento de reglas de alerta
<a name="v10-alerting-setup-provision-tf-rules"></a>

Las [reglas de alertas](v10-alerting-configure.md) le permiten enviar alertas de cualquier origen de datos de Grafana. Puede ser un origen de datos que ya haya configurado, o puede [definir sus orígenes de datos en Terraform](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/data_source) junto con sus reglas de alerta.

**Aprovisionamiento de reglas de alerta**

1. Cree el origen de datos que se va a consultar y una carpeta en la que almacenar las reglas.

   En este ejemplo, se usa el origen de datos [Configurar una fuente TestData de datos para realizar pruebas](testdata-data-source.md).

   Las alertas se pueden definir en cualquier origen de datos de backend de Grafana.

   ```
   resource "grafana_data_source" "testdata_datasource" {
       name = "TestData"
       type = "testdata"
   }
   
   resource "grafana_folder" "rule_folder" {
       title = "My Rule Folder"
   }
   ```

1. Defina una regla de alerta.

   Para obtener más información sobre las reglas de alerta, consulte [cómo crear alertas administradas por Grafana](https://grafana.com/blog/2022/08/01/grafana-alerting-video-how-to-create-alerts-in-grafana-9/).

1. Cree un grupo de reglas que contenga una o más reglas.

   En este ejemplo, se usa el grupo de recursos `grafana_rule_group`.

   ```
   resource "grafana_rule_group" "my_rule_group" {
       name = "My Alert Rules"
       folder_uid = grafana_folder.rule_folder.uid
       interval_seconds = 60
       org_id = 1
   
       rule {
           name = "My Random Walk Alert"
           condition = "C"
           for = "0s"
   
           // Query the datasource.
           data {
               ref_id = "A"
               relative_time_range {
                   from = 600
                   to = 0
               }
               datasource_uid = grafana_data_source.testdata_datasource.uid
               // `model` is a JSON blob that sends datasource-specific data.
               // It's different for every datasource. The alert's query is defined here.
               model = jsonencode({
                   intervalMs = 1000
                   maxDataPoints = 43200
                   refId = "A"
               })
           }
   
           // The query was configured to obtain data from the last 60 seconds. Let's alert on the average value of that series using a Reduce stage.
           data {
               datasource_uid = "__expr__"
               // You can also create a rule in the UI, then GET that rule to obtain the JSON.
               // This can be helpful when using more complex reduce expressions.
               model = <<EOT
   {"conditions":[{"evaluator":{"params":[0,0],"type":"gt"},"operator":{"type":"and"},"query":{"params":["A"]},"reducer":{"params":[],"type":"last"},"type":"avg"}],"datasource":{"name":"Expression","type":"__expr__","uid":"__expr__"},"expression":"A","hide":false,"intervalMs":1000,"maxDataPoints":43200,"reducer":"last","refId":"B","type":"reduce"}
   EOT
               ref_id = "B"
               relative_time_range {
                   from = 0
                   to = 0
               }
           }
   
           // Now, let's use a math expression as our threshold.
           // We want to alert when the value of stage "B" above exceeds 70.
           data {
               datasource_uid = "__expr__"
               ref_id = "C"
               relative_time_range {
                   from = 0
                   to = 0
               }
               model = jsonencode({
                   expression = "$B > 70"
                   type = "math"
                   refId = "C"
               })
           }
       }
   }
   ```

1. Vaya a la interfaz de usuario de Grafana y compruebe su regla de alerta.

   De esta forma podrá ver si la regla de alerta se activa. También puede ver una visualización de cada una de las fases de consulta de la regla de alerta.

   Cuando se activa la alerta, Grafana envía una notificación a través de la política que haya definido.

   Por ejemplo, si elige Slack como punto de contacto, [Alertmanager](https://github.com/prometheus/alertmanager) integrado de Grafana publica automáticamente un mensaje en Slack.

# Visualización de los recursos de alerta aprovisionados en Grafana
<a name="v10-alerting-setup-provision-view"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Puede verificar que sus recursos de alertas se crearon en Grafana.

**Visualización de los recursos aprovisionados en Grafana**

1. Abra su instancia de Grafana.

1. Vaya a Alertas.

1. Haga clic en una carpeta de recursos de alertas, por ejemplo, Reglas de alertas.

   Los recursos aprovisionados se etiquetan como **Aprovisionados**, de modo que queda claro que no se crearon manualmente.

**nota**  
No puede editar los recursos aprovisionados desde Grafana. Solo puede cambiar las propiedades del recurso si cambia el archivo de aprovisionamiento y reinicia Grafana o hace una recarga en caliente. Esto evita que se hagan cambios en el recurso que se sobrescribirían si se volviera a aprovisionar un archivo o si se hiciera una recarga en caliente.

# Configuración de alertas
<a name="v10-alerting-configure"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Configure las características e integraciones que necesita para crear y administrar las alertas.

**Topics**
+ [Configuración de las reglas de alertas administradas por Grafana](v10-alerting-configure-grafanamanaged.md)
+ [Configuración de reglas de alertas administradas por orígenes de datos](v10-alerting-configure-datasourcemanaged.md)
+ [Configuración de reglas de registros](v10-alerting-configure-recordingrules.md)
+ [Configuración de puntos de contacto](v10-alerting-configure-contactpoints.md)
+ [Configuración de políticas de notificación](v10-alerting-configure-notification-policies.md)

# Configuración de las reglas de alertas administradas por Grafana
<a name="v10-alerting-configure-grafanamanaged"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las reglas administradas por Grafana son el tipo de regla de alertas más flexible. Le permiten crear alertas que pueden actuar sobre los datos de cualquiera de nuestros orígenes de datos admitidos. Además de admitir varios orígenes de datos, también puede agregar expresiones para transformar los datos y establecer condiciones de alertas. También se admite el uso de imágenes en las notificaciones de alerta. Este es el único tipo de regla que permite enviar alertas desde varios orígenes de datos en una sola definición de regla.

Se pueden crear varias instancias de alerta como resultado de una regla de alertas (también denominada alerta multidimensional).

Las reglas de alerta administradas por Grafana solo las pueden editar o eliminar los usuarios con permisos de edición para la carpeta en la que se almacenan las reglas.

Si elimina un recurso de alerta que se haya creado en la interfaz de usuario, ya no podrá recuperarlo. Para hacer una copia de seguridad de la configuración y poder restaurar los recursos de alertas eliminados, cree los recursos de alertas con Terraform o la API de alertas.

En los siguientes procedimientos, llevaremos a cabo el proceso de creación de las reglas de alertas administradas por Grafana.

Para crear una regla de alertas administrada por Grafana, utilice el flujo de creación de alertas en el espacio de trabajo y siga estos pasos que le serán útiles.

**Establecimiento del nombre de regla de alertas**

1. Elija **Alertas** -> **Reglas de alertas** -> **\$1 Nueva regla de alertas**.

1. Ingrese un nombre para identificar la regla de alertas.

   Este nombre aparece en la lista de las reglas de alertas. También es la etiqueta `alertname` de cada instancia de alerta que se crea a partir de esta regla.

A continuación, defina una consulta para obtener los datos que quiere medir y una condición que debe cumplirse antes de que se active una regla de alertas.

**Definición de la consulta y condición**

1. Elija un origen de datos.

1. En el menú desplegable **Opciones**, especifique un [intervalo de tiempo](v10-dash-using-dashboards.md#v10-dash-setting-dashboard-time-range).
**nota**  
Grafana Alerting solo admite intervalos de tiempo relativos fijos, por ejemplo, `now-24hr: now`.  
No admite intervalos de tiempo absolutos: `2021-12-02 00:00:00 to 2021-12-05 23:59:592` o intervalos de tiempo semirrelativos: `now/d to: now`.

1. Agregue una consulta.

   Para agregar varias [consultas](v10-panels-query-xform.md#v10-panels-query-xform-add), elija **Agregar consulta**.

   Grafana administra todas las reglas de alertas de manera predeterminada. Si quiere cambiar a una regla de alertas administrada por un origen de datos, haga clic en **Cambiar a una regla de alertas administrada por un origen de datos**.

1. Agregue una o más [expresiones](v10-panels-query-xform-expressions.md).

   1. Para cada expresión, seleccione **Condición clásica** para crear una regla de alerta única o elija entre las opciones **Matemáticas**, **Reducir** y **Remuestrear** para generar una alerta independiente para cada serie.
**nota**  
Al usar Prometheus, puede utilizar un vector instantáneo y funciones integradas, por lo que no es necesario agregar expresiones adicionales.

   1. Elija **Vista previa** para verificar que la expresión es correcta.

1. [Opcional] Para agregar un umbral de recuperación, active la opción **Umbral de recuperación personalizado** e introduzca un valor para indicar cuándo debe dejar de funcionar la regla de alertas.

   Solo puede agregar un umbral de recuperación en una consulta y debe ser la condición de alerta.

1. Elija **Establecer como condición de alerta** en la consulta o expresión que quiere establecer como condición de alerta.

Utilice la evaluación de las reglas de alertas para determinar con qué frecuencia debe evaluarse una regla de alertas y con qué rapidez debe cambiar su estado.

Para ello, debe asegurarse de que la regla de alertas se encuentra en el grupo de evaluación correcto y establecer un periodo de tiempo pendiente que se adapte mejor a su caso de uso.

**Configuración del comportamiento de evaluación de alertas**

1. Seleccione una carpeta o elija **\$1 Nueva carpeta**.

1. Seleccione un grupo de evaluación o haga clic en **\$1 Nuevo grupo de evaluación**.

   Si va a crear un grupo de evaluación nuevo, especifique el intervalo para el grupo.

   Todas las reglas del mismo grupo se evalúan simultáneamente durante el mismo intervalo de tiempo.

1. Ingrese un periodo pendiente.

   El periodo pendiente es el periodo en el que una regla de alertas puede infringir la condición hasta que se active.

   Una vez cumplida una condición, la alerta pasa al estado **Pendiente**. Si la condición permanece activa durante el tiempo especificado, la alerta pasa al estado **Activación**, de lo contrario se revertirá al estado **Normal**.

1. Active las notificaciones de alerta de pausa, si es necesario.
**nota**  
Pause la evaluación de las reglas de alertas para evitar alertas excesivas mientras ajustas las alertas. La pausa detiene la evaluación de las reglas de alertas y no crea ninguna instancia de alertas. Esto es distinto a los tiempos de silencio, que impiden que se envíen las notificaciones, pero permiten evaluar las reglas de alertas y crear instancias de alertas.  
Puede pausar la evaluación de las reglas de alertas para evitar alertas excesivas mientras ajustas las alertas. La pausa detiene la evaluación de las reglas de alertas y no crea ninguna instancia de alertas. Esto es distinto a los tiempos de silencio, que impiden que se envíen las notificaciones, pero permiten evaluar las reglas de alertas y crear instancias de alertas.

1. En **Configurar la gestión de errores y ausencia de datos**, configure el comportamiento de las alertas en ausencia de datos.

   Use las directrices más adelante en esta sección.

Agregue etiquetas a las reglas de alertas para establecer qué política de notificación debe gestionar las instancias de alertas de activación.

Todas las reglas e instancias de alertas, independientemente de sus etiquetas, coinciden con la política de notificaciones predeterminada. Si no hay políticas anidadas o ninguna política anidada coincide con las etiquetas de la regla o instancia de alerta, la política de notificación predeterminada es la política coincidente.

**Para configurar notificaciones**

1. Agregue etiquetas si quiere cambiar la forma en que se distribuyen las notificaciones.

   Para agregar etiquetas personalizadas, seleccione los pares clave-valor existentes en el menú desplegable o, para agregar etiquetas nuevas, ingrese la nueva clave o valor.

1. Obtenga una vista previa de la configuración de enrutamiento de las instancias de alertas.

   En función de las etiquetas agregadas, las instancias de alertas se redirigen a las políticas de notificaciones que se muestran.

   Amplíe cada política de notificaciones para ver más detalles.

1. Elija **Ver detalles** para ver los detalles del enrutamiento de las alertas y una vista previa.

Agregue [anotaciones](v10-alerting-overview-labels.md#v10-alerting-overview-labels-annotations) para proporcionar más contexto sobre la alerta en el mensaje de las notificaciones de alertas.

Las anotaciones agregan metadatos para proporcionar más información sobre la alerta en el mensaje de las notificaciones de alertas. Por ejemplo, agregue una anotación **Resumen** que le indique qué valor activó la alerta o en qué servidor se produjo.

**Adición de anotaciones**

1. [Opcional] Agregue un resumen.

   Breve resumen de lo que sucedió y por qué.

1. [Opcional] Agregue una descripción.

   Descripción de lo que hace la regla de alerta.

1. [Opcional] Agregue una URL del manual de procedimientos.

   Página web en la que mantiene el manual de procedimientos de la alerta.

1. [Opcional] Agregue una anotación personalizada.

1. [Opcional] Agregue un panel y un enlace al panel.

   Vincula las alertas a los paneles de un panel de control.

1. Seleccione **Guardar regla**.

**Regla única y multidimensional**

En el caso de las alertas administradas por Grafana, puede crear una regla con una condición clásica o puede crear una regla multidimensional.
+ **Regla con condición clásica**

  Utilice la expresión de condición clásica para crear una regla que active una alerta única cuando se cumpla su condición. En el caso de una consulta que devuelve varias series, Grafana no hace un seguimiento del estado de alerta de cada serie. Como resultado, Grafana envía una sola alerta incluso cuando se cumplen las condiciones de alerta para varias series.
+ **Regla multidimensional**

  Para generar una alerta independiente para cada serie, cree una regla multidimensional. Utilice las expresiones `Math`, `Reduce` o `Resample` para crear una regla multidimensional. Por ejemplo:
  + Agregue una expresión `Reduce` para cada consulta para agregar los valores del intervalo de tiempo seleccionado en un solo valor (no es necesario para las [reglas que utilizan datos numéricos](v10-alerting-overview-numeric.md)).
  + Agregue una expresión `Math` con la condición de la regla. No es necesario en caso de que una consulta o una expresión de reducción ya devuelve `0` si la regla no se debe activar, o un número positivo si se debe activar. Algunos ejemplos: `$B > 70` si se dispara en caso de que el valor de B query/expression sea superior a 70. `$B < $C * 100`en caso de que se dispare si el valor de B es menor que el valor de C multiplicado por 100. Si las consultas que se comparan tienen varias series en sus resultados, las series de consultas diferentes coinciden si tienen las mismas etiquetas o si una es un subconjunto de la otra.

**nota**  
Grafana no admite consultas de alertas con variables de plantilla. Hay más información disponible en [https://comtemplate-variables-are-notmunity.grafana.com/t/](https://community.grafana.com/t/template-variables-are-not-supported-in-alert-queries-while-setting-up-alert/2514) - - /2514. supported-in-alert-queries while-setting-up-alert

**Configuración de la gestión de errores y ausencia de datos**

Configure el comportamiento de las alertas cuando la evaluación de la regla de alertas no devuelva datos o devuelva un error.

**nota**  
Las reglas de alertas configuradas para activarse cuando una evaluación no devuelve datos o genera un error, solo se activan cuando finaliza todo el periodo de evaluación. Esto significa que, en lugar de activarse inmediatamente cuando se incumple la condición de la regla de alertas, la regla de alertas espera hasta que termine el tiempo establecido en el campo **Para** y, a continuación, se activa, lo que reduce el ruido de las alertas y tolera problemas temporales de disponibilidad de los datos.

Si la evaluación de la regla de alertas no arroja datos, puede configurar el estado de la regla de alertas para que aparezca de la siguiente manera:


| Sin datos | Description (Descripción) | 
| --- | --- | 
| Sin datos | Cree una nueva alerta DatasourceNoData con el nombre y el UID de la regla de alertas y el UID del origen de datos que no devolvió ningún dato como etiquetas. | 
| Alertas | Establece el estado de la regla de alertas en Alerting. La regla de alertas espera hasta que haya terminado el tiempo establecido en el campo Para antes de activarse. | 
| Correcto | Establece el estado de la regla de alertas en Normal. | 

Si la evaluación arroja un error, puede configurar el estado de la regla de alertas para que aparezca de la siguiente manera:


| Error | Description (Descripción) | 
| --- | --- | 
| Error | Crea una instancia de alertas DatasourceError con el nombre y el UID de la regla de alertas y el UID del origen de datos que no devolvió datos como etiquetas. | 
| Alertas | Establece el estado de la regla de alertas en Alerting. La regla de alertas espera hasta que haya terminado el tiempo establecido en el campo Para antes de activarse. | 
| Correcto | Establece el estado de la regla de alertas en Normal. | 

**Resolución de las instancias de alertas obsoletas**

Una instancia de alertas se considera obsoleta si su dimensión o serie ha desaparecido por completo de los resultados de la consulta durante dos intervalos de evaluación.

Las instancias de alertas obsoletas que se encuentran en los estados `Alerting`, `NoData` o `Error` se marcan automáticamente como `Resolved` y la anotación `grafana_state_reason` se agrega a la instancia de alertas con el motivo `MissingSeries`.

**Creación de alertas a partir de paneles**

Cree alertas a partir de cualquier tipo de paneles. Esto significa que puede reutilizar las consultas del panel y crear alertas en función de ellas.

1. Vaya a un panel en la sección **Paneles**.

1. En la esquina superior derecha del panel, elija los tres puntos (elipses).

1. En el menú desplegable, seleccione **Más…** y, a continuación, elija **Nueva regla de alertas**.

Se abrirá el formulario de reglas de alertas que le permitirá configurar y crear la alerta en función de la consulta del panel actual.

# Configuración de reglas de alertas administradas por orígenes de datos
<a name="v10-alerting-configure-datasourcemanaged"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Cree reglas de alerta para una instancia externa de Grafana Mimir o Loki que tenga habilitada la API de reglas. Se denominan reglas de alerta administradas por el origen de datos.

**nota**  
Los usuarios con roles de editor o administrador pueden editar o eliminar las reglas de alertas de una instancia externa de Grafana Mimir o Loki.  
Si elimina un recurso de alerta que se haya creado en la interfaz de usuario, ya no podrá recuperarlo. Para hacer una copia de seguridad de la configuración y poder restaurar los recursos de alertas eliminados, cree los recursos de alertas con Terraform o la API de alertas.

**Requisitos previos**
+ Compruebe que tenga permiso de escritura para acceder al origen de datos de Prometheus o Loki. De lo contrario, no podrá crear ni actualizar las reglas de alerta administradas por Grafana Mimir.
+ En el caso de los orígenes de datos de Grafana Mimir y Loki, configure los servicios respectivos para habilitar la API de reglas.
  + **Loki**: el tipo de almacenamiento de reglas `local`, predeterminado para el origen de datos de Loki, solo admite la visualización de reglas. Para editar las reglas, configure uno de los otros tipos de almacenamiento de reglas.
  + **Grafana Mimir**: use el prefijo `/prometheus`. El origen de datos de Prometheus es compatible con Grafana Mimir y Prometheus, y Grafana espera que tanto la [API de consultas](https://grafana.com/docs/mimir/latest/operators-guide/reference-http-api/#querier--query-frontend) como la [API de reglas](https://grafana.com/docs/mimir/latest/operators-guide/reference-http-api/#ruler) estén en la misma URL. No puede proporcionar una URL diferente para la API de regla.

**nota**  
Si no quiere administrar las reglas de alertas para un origen de datos de Loki o Prometheus en particular, vaya a su configuración y desactive la casilla **Administrar alertas mediante la interfaz de usuario de alertas**.

En los siguientes procedimientos, le guiaremos en el proceso de creación de las reglas de alertas administradas por el origen de datos.

Para crear una regla de alertas administrada por el origen de datos, utilice el flujo de creación de alertas en el espacio de trabajo y siga estos pasos que serán útiles.

**Configuración del nombre de la regla de alertas**

1. Elija **Alertas** -> **Reglas de alertas** -> **\$1 Nueva regla de alertas**.

1. Ingrese un nombre para identificar la regla de alertas.

   Este nombre aparece en la lista de las reglas de alertas. También es la etiqueta `alertname` de cada instancia de alerta que se crea a partir de esta regla.

Defina una consulta para obtener los datos que quiere medir y una condición que debe cumplirse antes de que se active una regla de alerta.

**Definición de una consulta y condición**

1. Grafana administra todas las reglas de alertas de manera predeterminada. Para cambiar a una regla de alerta administrada por un origen de datos, elija **Cambiar a una regla de alerta administrada por un origen de datos**.

1. Seleccione un origen de datos de la lista desplegable.

   También puede elegir **Abrir el selector avanzado de orígenes de datos** para ver más opciones, incluida la adición de un origen de datos (solo para administradores).

1. Ingrese una consulta PromQL o LogQL.

1. Elija **Vista previa de alertas**.

Utilice la evaluación de las reglas de alertas para determinar con qué frecuencia debe evaluarse una regla de alertas y con qué rapidez debe cambiar su estado.

**Configuración del comportamiento de evaluación de alertas**

1. Seleccione un espacio de nombres o elija **\$1 Nuevo espacio de nombres**.

1. Seleccione un grupo de evaluación o elija **\$1 Nuevo grupo de evaluación**.

   Si va a crear un grupo de evaluación nuevo, especifique el intervalo para el grupo.

   Todas las reglas del mismo grupo se evalúan secuencialmente durante el mismo intervalo de tiempo.

1. Ingrese un periodo pendiente.

   El periodo pendiente es el periodo en el que una regla de alertas puede infringir la condición hasta que se active.

   Una vez cumplida una condición, la alerta pasa al estado `Pending`. Si la condición permanece activa durante el tiempo especificado, la alerta pasa al estado `Firing`, de lo contrario se revertirá al estado `Normal`.

Agregue etiquetas a las reglas de alertas para establecer qué política de notificación debe gestionar las instancias de alertas de activación.

Todas las reglas e instancias de alertas, independientemente de sus etiquetas, coinciden con la política de notificaciones predeterminada. Si no hay políticas anidadas o ninguna política anidada coincide con las etiquetas de la regla o instancia de alerta, la política de notificación predeterminada es la política coincidente.

**Configuración de las notificaciones**
+ Agregue etiquetas si quiere cambiar la forma en que se distribuyen las notificaciones.

  Para agregar etiquetas personalizadas, seleccione los pares clave-valor existentes en el menú desplegable o, para agregar etiquetas nuevas, ingrese la nueva clave o valor.

Agregue [anotaciones](v10-alerting-overview-labels.md#v10-alerting-overview-labels-annotations) para proporcionar más contexto sobre la alerta en las notificaciones de alerta.

Las anotaciones agregan metadatos para proporcionar más información sobre la alerta en las notificaciones de alertas. Por ejemplo, agregue una anotación `Summary` que le indique qué valor activó la alerta o en qué servidor se produjo.

**Adición de anotaciones**

1. [Opcional] Agregue un resumen.

   Breve resumen de lo que sucedió y por qué.

1. [Opcional] Agregue una descripción.

   Descripción de lo que hace la regla de alerta.

1. [Opcional] Agregue una URL del manual de procedimientos.

   Página web en la que mantiene el manual de procedimientos de la alerta.

1. [Opcional] Agregue una anotación personalizada.

1. [Opcional] Agregue un panel y un enlace al panel.

   Vincula las alertas a los paneles de un panel de control.

1. Seleccione **Guardar regla**.

# Configuración de reglas de registros
<a name="v10-alerting-configure-recordingrules"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Puede crear y administrar reglas de registros para una instancia externa de Grafana Mimir o Loki. Las reglas de registro calculan por anticipado expresiones que se necesitan con frecuencia o que son costosas desde el punto de vista de la computación y guardan el resultado como un nuevo conjunto de series temporales. La consulta de esta nueva serie temporal es más rápida, especialmente en el caso de los paneles, ya que consultan la misma expresión cada vez que se actualizan.

**nota**  
Las reglas de registros se ejecutan como reglas de instancia y se ejecutan cada 10 segundos.

**Requisitos previos**
+ Compruebe que tenga permisos de escritura para acceder al origen de datos de Prometheus o Loki. Creará o actualizará las reglas de alertas en el origen de datos.
+ En el caso de los orígenes de datos de Grafana Mimir y Loki, configure los servicios respectivos para habilitar la API de reglas.
  + **Loki**: el tipo de almacenamiento de reglas `local`, predeterminado para el origen de datos de Loki, solo admite la visualización de reglas. Para editar las reglas, configure uno de los otros tipos de almacenamiento.
  + **Grafana Mimir**: use el prefijo `/prometheus`. El origen de datos de Prometheus es compatible con Grafana Mimir y Prometheus, y Grafana espera que tanto la API de consultas como la API de reglas estén en la misma URL. No puede proporcionar una URL diferente para la API de regla.

**nota**  
Si no desea administrar las reglas de alerta para un origen de datos de Loki o Prometheus en particular, vaya a su configuración y desactive la casilla **Administrar alertas mediante la interfaz de usuario de alertas**.

**Creación de reglas de registros**

1. En la consola de Grafana, en el menú de Grafana, elija **Alerta**, **Reglas de alertas**.

1. Elija **Nueva regla de registros**.

1. Elija un nombre de regla.

   El nombre de la regla de registro debe ser un nombre de métrica de Prometheus y no debe contener espacios en blanco.

1. Definición de la consulta
   + Seleccione el origen de datos de Loki o Prometheus.
   + Ingrese una consulta.

1. Agregue un espacio de nombres y un grupo.
   + En el menú desplegable **Espacio de nombres**, seleccione un espacio de nombres de reglas existente o agregue uno nuevo. Los espacios de nombres pueden contener uno o más grupos de reglas y solo tienen un propósito organizativo.
   + En el menú desplegable **Grupo**, seleccione un grupo existente del espacio de nombres seleccionado o agregue uno nuevo. Las reglas recién creadas se agregan al final del grupo. Las reglas de un grupo se ejecutan secuencialmente a intervalos regulares, con el mismo tiempo de evaluación.

1. Agregue etiquetas.
   + Para agregar etiquetas personalizadas, seleccione los pares clave-valor existentes en el menú desplegable o, para agregar etiquetas nuevas, ingrese la nueva clave o valor.

1. Elija **Guardar regla** para guardar la regla o **Guardar regla y salir** para guardar la regla y volver a la página Alertas.

# Configuración de puntos de contacto
<a name="v10-alerting-configure-contactpoints"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Utilice los puntos de contacto para definir cómo se notifica a los contactos cuando se activa una regla de alerta.

**nota**  
Puede crear y editar puntos de contacto para las alertas administradas por Grafana. Los puntos de contacto para las alertas administradas por el origen de datos son de solo lectura.

## Uso de puntos de contacto
<a name="v10-alerting-configure-contactpoints-working"></a>

Los procedimientos siguientes muestran cómo agregar, editar y probar un punto de contacto.

**Cómo agregar un punto de contacto**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Seleccione **Puntos de contacto**.

1. En el menú desplegable **Elegir Alertmanager**, seleccione un Alertmanager. De forma predeterminada, está seleccionado Grafana Alertmanager.

1. En la pestaña **Puntos de contacto**, elija **\$1 Agregar punto de contacto**.

1. Ingrese un **nombre** para el punto de contacto.

1. En **Integración**, elija un tipo y rellene los campos obligatorios en función de ese tipo. Por ejemplo, si elige Slack, ingrese los canales y usuarios de Slack con los que debe contactar.

1. Si está disponible para el punto de contacto que seleccionó, elija **Configuración opcional** para especificar configuraciones adicionales.

1. En **Configuración de notificaciones**, si lo desea, seleccione **Deshabilitar el mensaje resuelto** si no desea recibir una notificación cuando se resuelva una alerta.

1. Para agregar otra integración de puntos de contacto, seleccione **Agregar integración de puntos de contacto** y repita los pasos para cada tipo de punto de contacto que necesite.

1. Guarde los cambios.

**Edición de un punto de contacto**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Elija **Puntos de contacto** para ver una lista de los puntos de contacto existentes.

1. Seleccione el punto de contacto que quiere editar y, a continuación, elija **Editar**.

1. Actualice el punto de contacto y, a continuación, guarde los cambios.

Puede eliminar los puntos de contacto que la política de notificaciones no esté utilizando.

**Eliminación de un punto de contacto**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Elija **Puntos de contacto** para abrir la lista de los puntos de contacto existentes.

1. En **Puntos de contacto**, seleccione el punto de contacto que quiere eliminar y, a continuación, elija **Más**, **Eliminar**.

1. En el cuadro de diálogo de confirmación, elija **Sí, eliminar**.

**nota**  
Si una política de notificaciones está utilizando el punto de contacto, debe eliminarla o editarla para usar un punto de contacto diferente antes de eliminar el punto de contacto.

Una vez creado el punto de contacto, puede enviar una notificación de prueba para comprobar que está configurado correctamente.

**Envío de una notificación de prueba**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Elija **Puntos de contacto** para abrir la lista de los puntos de contacto existentes.

1. En **Puntos de contacto**, seleccione el punto de contacto que quiere probar y, a continuación, elija **Editar**. También puede crear un nuevo punto de contacto si lo necesita.

1. Elija **Probar** para abrir el cuadro de diálogo de prueba del punto de contacto.

1. Elija si desea enviar una notificación de prueba predefinida o seleccione **Personalizar** para agregar sus propias anotaciones y etiquetas personalizadas a la notificación de prueba.

1. Elija **Enviar notificación de prueba** para probar la alerta con los puntos de contacto indicados.

## Configuración de las integraciones de puntos de contacto
<a name="v10-alerting-configure-contactpoints-integration"></a>

Configure las integraciones de puntos de contacto en Grafana para seleccionar el canal de comunicación preferido para recibir notificaciones cuando se activen las reglas de alerta. Cada integración tiene sus propias opciones de configuración y proceso de configuración. En la mayoría de los casos, esto implica proporcionar una clave de API o una URL de Webhook.

Una vez configuradas, puede utilizar las integraciones como parte de los puntos de contacto para recibir notificaciones cada vez que la alerta cambie de estado. En esta sección, abordaremos los pasos básicos para configurar una integración, PagerDuty como ejemplo, para que pueda comenzar a recibir alertas en tiempo real y estar al tanto de sus datos de monitoreo.

**Lista de integraciones admitidas**

En la siguiente tabla, se muestran los tipos de puntos de contacto de admitidos por Grafana.


| Name | Tipo | 
| --- | --- | 
| Amazon SNS | `sns` | 
| OpsGenie | `opsgenie` | 
| PagerDuty | `pagerduty` | 
| Slack | `slack` | 
| VictorOps | `victorops` | 

**¿Cómo configurar PagerDuty las alertas?**

Para configurarlo PagerDuty, debe proporcionar una clave de integración. Proporcione los siguientes detalles.


| Opción | Description (Descripción) | 
| --- | --- | 
| Clave de integración | Clave de integración para PagerDuty | 
| Gravedad | Nivel para notificaciones dinámicas. El valor predeterminado es critical. | 
| Detalles personalizados | Detalles adicionales sobre el evento | 

El campo `CustomDetails` es un objeto que contiene pares de clave-valor arbitrarios. Los detalles definidos por el usuario se combinan con los que se utilizan de manera predeterminada.

Los valores predeterminados para `CustomDetails` son:

```
{
	"firing":       `{{ template "__text_alert_list" .Alerts.Firing }}`,
	"resolved":     `{{ template "__text_alert_list" .Alerts.Resolved }}`,
	"num_firing":   `{{ .Alerts.Firing | len }}`,
	"num_resolved": `{{ .Alerts.Resolved | len }}`,
}
```

En caso de claves duplicadas, los detalles definidos por el usuario sobrescriben los predeterminados.

# Configuración de políticas de notificación
<a name="v10-alerting-configure-notification-policies"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las políticas de notificaciones determinan cómo se dirigen las alertas a los puntos de contacto.

Las políticas tienen una estructura de árbol, en la que cada política puede incluir una o varias políticas anidadas. Cada política, excepto la política predeterminada, también puede coincidir con etiquetas de alerta específicas.

La política predeterminada evalúa cada alerta y, posteriormente, las evalúa cada política anidada.

Si habilita la opción `Continue matching subsequent sibling nodes` para una política anidada, la evaluación continúa incluso después de una o más coincidencias. Los ajustes de configuración y la información del punto de contacto de una política principal rigen el comportamiento de una alerta que no coincide con ninguna de las políticas secundarias. Una política predeterminada rige cualquier alerta que no coincida con una política anidada.

Para obtener más información sobre las políticas de notificaciones, consulte [Notificaciones](v10-alerting-explore-notifications.md).

Los procedimientos que aparecen a continuación le muestran cómo crear y administrar políticas de notificaciones.

**Edición de la política de notificación predeterminada**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Elija **Políticas de notificación**.

1. En el menú desplegable **Elegir Alertmanager**, seleccione el Alertmanager que quiere editar.

1. En la sección **Política predeterminada**, elija **...**, **Editar**.

1. En **Punto de contacto predeterminado**, actualice el punto de contacto al que se deben enviar las notificaciones de las reglas cuando las reglas de alerta no coincidan con ninguna política específica.

1. En **Agrupar por**, elija las etiquetas para agruparlas. Si coinciden varias alertas para esta política, se agrupan según estas etiquetas. Se envía una notificación por grupo. Si el campo está vacío (valor predeterminado), todas las notificaciones se envían en un solo grupo. Use una etiqueta especial, `...` para agrupar las alertas según todas las etiquetas (lo que desactiva la agrupación).

1. En **Opciones de temporización**, seleccione una de las siguientes opciones.
   + **Espera de grupo**: tiempo de espera para almacenar en búfer las alertas del mismo grupo antes de enviar una notificación inicial. El valor predeterminado es de 30 segundos.
   + **Intervalo de grupo**: intervalo de tiempo mínimo entre dos notificaciones de un grupo. El valor predeterminado es 5 minutos.
   + **Intervalo de repetición**: intervalo de tiempo mínimo antes de volver a enviar una notificación si no se han agregado alertas nuevas al grupo. El valor predeterminado es 4 horas.

1. Elija **Guardar** para guardar los cambios.

Para crear una nueva política de notificaciones, debe seguir su estructura de árbol. Las nuevas políticas que se crean en el tronco del árbol (la política predeterminada) son las ramas del árbol. Cada rama puede tener sus propias políticas anidadas. Este es el motivo por el que siempre agregará una nueva política **anidada**, ya sea en la política predeterminada o en una política ya anidada.

**Adición de una nueva política anidada**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Elija **Políticas de notificación**.

1. En el menú desplegable **Elegir Alertmanager**, seleccione el Alertmanager que quiere editar.

1. Para agregar una política específica superior, vaya a la sección de enrutamiento específico (ya sea a la política predeterminada o a otra política existente a la que quiere agregar una nueva política anidada) y seleccione **\$1 Nueva política anidada.**

1. En la sección Etiquetas coincidentes, agregue una o más reglas de etiquetas de alerta coincidentes.

1. En el menú desplegable **Punto de contacto**, seleccione el punto de contacto al que se van a enviar las notificaciones si una alerta coincide solo con esta política específica y no con cualquiera de las políticas anidadas.

1. Si lo desea, habilite la opción **Continuar con la coincidencia de los nodos subsiguientes del mismo nivel** para seguir haciendo coincidir las políticas del mismo nivel incluso después de que la alerta coincida con la política actual. Cuando esta opción está habilitada, puede recibir más de una notificación para una alerta.

1. Si lo desea, habilite la opción **Anular agrupación** para especificar la misma agrupación que la política predeterminada. Si la opción no está habilitada, se utiliza la agrupación de políticas predeterminada.

1. Si lo desea, habilite la opción **Anular temporizadores generales** para anular las opciones de temporización configuradas de la política de notificaciones de grupo.

1. Elija **Guardar política** para guardar los cambios.

**Edición de una política anidada**

1. En el menú de la izquierda, seleccione **Alertas**.

1. Elija **Políticas de notificación**.

1. Seleccione la política que quiere modificar y elija **...**, **Editar**.

1. Haga los cambios que desee (como cuando agrega una política anidada).

1. Guarde los cambios.

**Búsqueda de políticas**

Puede buscar en el árbol de políticas por *Criterios de coincidencia de etiquetas* o *puntos de contacto*.
+ Para buscar por punto de contacto, ingrese el nombre parcial o completo de un punto de contacto en el campo **Buscar por punto de contacto**. Las políticas que utilizan ese punto de contacto se resaltarán en la interfaz de usuario.
+ Para buscar por etiqueta, introduzca un criterio de coincidencia de etiquetas válido en el campo de entrada **Buscar por criterios de coincidencia**. Se pueden ingresar varios criterios de coincidencia separados por una coma. Por ejemplo, una entrada de criterio de coincidencia válida podría ser `severity=high, region=~EMEA|NA`.
**nota**  
Al buscar por etiqueta, todas las políticas coincidentes coincidirán será coincidencias exactas. No se admiten las coincidencias parciales ni las coincidencias de estilo regular.

# Administración de las alertas
<a name="v10-alerting-manage"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Una vez que haya configurado las reglas de alertas, puntos de contacto y políticas de notificación, puede utilizar Grafana Alerting para administrar las alertas en la práctica.

**Topics**
+ [Personalización de las notificaciones](v10-alerting-manage-notifications.md)
+ [Administración de puntos de contacto](v10-alerting-manage-contactpoints.md)
+ [Silenciamiento de las notificaciones de alertas](v10-alerting-silences.md)
+ [Visualización y filtrado de las reglas de alertas](v10-alerting-manage-rules-viewfilter.md)
+ [Temporizadores de silencio](v10-alerting-manage-muting.md)
+ [Visualización del estado y de la integridad de las reglas de alertas](v10-alerting-manage-rulestate.md)
+ [Visualización y filtrado por grupos de alertas](v10-alerting-manage-viewfiltergroups.md)
+ [Visualización de los errores de notificación](v10-alerting-manage-viewnotificationerrors.md)

# Personalización de las notificaciones
<a name="v10-alerting-manage-notifications"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Personalice sus notificaciones con plantillas de notificaciones.

Puede usar plantillas de notificaciones para cambiar el título, el mensaje y el formato del mensaje de sus notificaciones.

Las plantillas de notificaciones no están vinculadas a integraciones de puntos de contacto específicas, como Amazon SNS o Slack. Sin embargo, puede optar por crear plantillas de notificaciones independientes para las distintas integraciones de puntos de contacto.

Puede utilizar las plantillas de notificaciones para:
+ Agregar, eliminar o reordenar la información de la notificación, incluidos el resumen, la descripción, las etiquetas y anotaciones, los valores y los enlaces
+ Formatear el texto en negrita y cursiva y agregar o eliminar saltos de línea

No puede utilizar las plantillas de notificaciones para:
+ Cambiar el diseño de las notificaciones en los servicios de mensajería instantánea como Slack y Microsoft Teams

**Topics**
+ [Uso del lenguaje de creación de plantillas de Go](v10-alerting-notifications-go-templating.md)
+ [Creación de plantillas de notificaciones](v10-alerting-create-templates.md)
+ [Uso de plantillas de notificaciones](#v10-alerting-use-notification-templates)
+ [Referencia de la plantilla](v10-alerting-template-reference.md)

# Uso del lenguaje de creación de plantillas de Go
<a name="v10-alerting-notifications-go-templating"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Las plantillas de notificaciones se escriben en el lenguaje de plantillas de Go, [texto/plantilla](https://pkg.go.dev/text/template).

En esta sección se proporciona información general sobre el lenguaje de creación de plantillas de Go y las plantillas de escritura en texto/plantilla.

## Punto
<a name="v10-go-dot"></a>

Dentro text/template hay un cursor especial llamado punto, y se escribe como`.`. Puede pensar en este cursor como una variable cuyo valor cambia según el lugar de la plantilla en el que se utilice. Por ejemplo, al principio de una plantilla de notificación `.` hace referencia al objeto `ExtendedData`, que contiene varios campos, entre los que se incluyen `Alerts`, `Status`, `GroupLabels`, `CommonLabels`, `CommonAnnotations` y `ExternalURL`. Sin embargo, el punto puede hacer referencia a otra cosa cuando se usa en un `range` sobre una lista, cuando se usa dentro de `with` o cuando se escriben plantillas de características que se van a usar en otras plantillas. Puede ver ejemplos de esto en [Creación de plantillas de notificaciones](v10-alerting-create-templates.md) y todos los datos y funciones en la [Referencia de la plantilla](v10-alerting-template-reference.md).

## Etiquetas de apertura y cierre
<a name="v10-go-openclosetags"></a>

En texto/plantilla, las plantillas comienzan por `{{` y terminan en `}}`, independientemente de si la plantilla imprime una variable o ejecuta estructuras de control, como las instrucciones if. Se diferencia en esto de otros lenguajes de creación de plantillas, como Jinja, donde la impresión de una variable usa `{{` y `}}`, y las estructuras de control usan `{%` y `%}`.

## Print (Imprimir)
<a name="v10-go-print"></a>

Para imprimir el valor de algo, use `{{` y `}}`. Puede imprimir el valor de un punto, un campo de punto, el resultado de una función y el valor de una [variable](#v10-go-variables). Por ejemplo, para imprimir el campo `Alerts` donde el punto hace referencia a `ExtendedData`, escribiría lo siguiente:

```
{{ .Alerts }}
```

## Iteración en alertas
<a name="v10-go-iterate-alerts"></a>

Para imprimir solo las etiquetas de cada alerta, en lugar de toda la información sobre la alerta, puede usar `range` para iterar las alertas en `ExtendedData`:

```
{{ range .Alerts }}
{{ .Labels }}
{{ end }}
```

Dentro del rango, el punto ya no hace referencia a `ExtendedData`, sino a una `Alert`. Puede utilizar `{{ .Labels }}` para imprimir las etiquetas de cada alerta. Esto funciona porque `{{ range .Alerts }}` cambia el punto para hacer referencia a la alerta actual de la lista de alertas. Cuando el rango finaliza, el punto se restablece al valor que tenía antes del inicio del rango, que en este ejemplo es `ExtendedData`:

```
{{ range .Alerts }}
{{ .Labels }}
{{ end }}
{{/* does not work, .Labels does not exist here */}}
{{ .Labels }}
{{/* works, cursor was reset */}}
{{ .Status }}
```

## Iteración en anotaciones y etiquetas
<a name="v10-go-iterate-labels"></a>

Vamos a escribir una plantilla para imprimir las etiquetas de cada alerta en el formato `The name of the label is $name, and the value is $value`, donde `$name` y `$value` contienen el nombre y el valor de cada etiqueta.

Como en el ejemplo anterior, utilice un rango para recorrer las alertas en iteración en `.Alerts` de forma que el punto haga referencia a la alerta actual de la lista de alertas y, a continuación, utilice un segundo rango en las etiquetas ordenadas para que el punto se actualice por segunda vez para hacer referencia a la etiqueta actual. Dentro del segundo rango, utilice `.Name` e `.Value` para imprimir el nombre y el valor de cada etiqueta:

```
{{ range .Alerts }}
{{ range .Labels.SortedPairs }}
The name of the label is {{ .Name }}, and the value is {{ .Value }}
{{ end }}
{{ range .Annotations.SortedPairs }}
The name of the annotation is {{ .Name }}, and the value is {{ .Value }}
{{ end }}
{{ end }}
```

## Las funciones de índice
<a name="v10-go-index"></a>

Para imprimir una anotación o etiqueta específica, utilice la función `index`.

```
{{ range .Alerts }}
The name of the alert is {{ index .Labels "alertname" }}
{{ end }}
```

## Instrucciones if
<a name="v10-go-if"></a>

Puede usar las instrucciones if en las plantillas. Por ejemplo, para imprimir `There are no alerts` si no hay alertas, en `.Alerts` escribiría lo siguiente:

```
{{ if .Alerts }}
There are alerts
{{ else }}
There are no alerts
{{ end }}
```

## With
<a name="v10-go-with"></a>

With es similar a las instrucciones if, pero a diferencia de las instrucciones if, `with` actualiza el punto para hacer referencia al valor de las instrucciones with:

```
{{ with .Alerts }}
There are {{ len . }} alert(s)
{{ else }}
There are no alerts
{{ end }}
```

## Variables
<a name="v10-go-variables"></a>

Las variables text/template deben crearse dentro de la plantilla. Por ejemplo, para crear una variable llamada `$variable` con el valor actual de punto, escribiría lo siguiente:

```
{{ $variable := . }}
```

Puede usar `$variable` dentro de un rango o `with` y hará referencia al valor del punto en el momento en que se definió la variable, no al valor actual del punto.

Por ejemplo, no puede escribir una plantilla que use `{{ .Labels }}` en el segundo rango porque aquí el punto hace referencia a la etiqueta actual, no a la alerta actual:

```
{{ range .Alerts }}
{{ range .Labels.SortedPairs }}
{{ .Name }} = {{ .Value }}
{{/* does not work because in the second range . is a label not an alert */}}
There are {{ len .Labels }}
{{ end }}
{{ end }}
```

Para solucionar este problema, defina una variable llamada `$alert` en el primer rango y antes del segundo rango:

```
{{ range .Alerts }}
{{ $alert := . }}
{{ range .Labels.SortedPairs }}
{{ .Name }} = {{ .Value }}
{{/* works because $alert refers to the value of dot inside the first range */}}
There are {{ len $alert.Labels }}
{{ end }}
{{ end }}
```

## Intervalo con índice
<a name="v10-go-rangeindex"></a>

Para poder obtener el índice de cada alerta de un rango, defina las variables de índice y valor al principio del rango:

```
{{ $num_alerts := len .Alerts }}
{{ range $index, $alert := .Alerts }}
This is alert {{ $index }} out of {{ $num_alerts }}
{{ end }}
```

## Definición de plantillas
<a name="v10-go-define"></a>

Puede definir plantillas que se puedan usar en de otras plantillas mediante `define` y el nombre de la plantilla entre comillas dobles. No debe definir plantillas con el mismo nombre que otras plantillas, incluidas las plantillas predeterminadas, como `__subject`, `__text_values_list`, `__text_alert_list`, `default.title` y `default.message`. Si se ha creado una plantilla con el mismo nombre que una plantilla predeterminada, o una plantilla en otra plantilla de notificaciones, Grafana puede utilizar cualquiera de las dos. Grafana no impide ni muestra ningún mensaje de error cuando hay dos o más plantillas con el mismo nombre.

```
{{ define "print_labels" }}
{{ end }}
```

## Ejecución de plantillas
<a name="v10-go-execute"></a>

Puede ejecutar una plantilla definida en su plantilla mediante `template`, el nombre de la plantilla entre comillas dobles y el cursor que se debe pasar a la plantilla:

```
{{ template "print_labels" . }}
```

## Paso de datos a las plantillas
<a name="v10-go-passdata"></a>

En una plantilla, un punto hace referencia al valor que se pasa a la plantilla.

Por ejemplo, si a una plantilla se le pasa una lista de alertas de activación, el punto se refiere a esa lista de alertas de activación:

```
{{ template "print_alerts" .Alerts }}
```

Si a la plantilla se le pasan las etiquetas ordenadas de una alerta, el punto hace referencia a la lista de etiquetas ordenadas:

```
{{ template "print_labels" .SortedLabels }}
```

Resulta útil a la hora de escribir plantillas reutilizables. Por ejemplo, para imprimir todas las alertas, puede escribir lo siguiente:

```
{{ template "print_alerts" .Alerts }}
```

Luego, para imprimir solo las alertas de activación, puede escribir lo siguiente:

```
{{ template "print_alerts" .Alerts.Firing }}
```

Esto funciona porque `.Alerts` y `.Alerts.Firing` son listas de alertas.

```
{{ define "print_alerts" }}
{{ range . }}
{{ template "print_labels" .SortedLabels }}
{{ end }}
{{ end }}
```

## Comentarios
<a name="v10-go-comments"></a>

Puede agregar comentarios con `{{/*` y `*/}}`:

```
{{/* This is a comment */}}
```

Para evitar que los comentarios agreguen saltos de línea, utilice:

```
{{- /* This is a comment with no leading or trailing line breaks */ -}}
```

## Sangría
<a name="v10-go-indentation"></a>

Puede usar sangrías, tanto tabulaciones como espacios, y saltos de línea para que las plantillas sean más legibles:

```
{{ range .Alerts }}
  {{ range .Labels.SortedPairs }}
    {{ .Name }} = {{ .Value }}
  {{ end }}
{{ end }}
```

Sin embargo, la sangría de la plantilla también estará presente en el texto. A continuación, veremos cómo eliminarlo.

## Eliminación de espacios y saltos de línea
<a name="v10-go-removespace"></a>

En text/template uso `{{-` y `-}}` para eliminar los espacios iniciales y finales y los saltos de línea.

Por ejemplo, cuando se utilizan sangrías y saltos de línea para hacer que una plantilla sea más legible:

```
{{ range .Alerts }}
  {{ range .Labels.SortedPairs }}
    {{ .Name }} = {{ .Value }}
  {{ end }}
{{ end }}
```

La sangría y los saltos de línea también estarán presentes en el texto:

```
    alertname = "Test"

    grafana_folder = "Test alerts"
```

Para poder eliminar las sangrías y los saltos de línea del texto, cambie `}}` por `-}}` al principio de cada rango:

```
{{ range .Alerts -}}
  {{ range .Labels.SortedPairs -}}
    {{ .Name }} = {{ .Value }}
  {{ end }}
{{ end }}
```

Las sangrías y los saltos de línea de la plantilla ya no aparecen en el texto:

```
alertname = "Test"
grafana_folder = "Test alerts"
```

# Creación de plantillas de notificaciones
<a name="v10-alerting-create-templates"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Cree plantillas de notificaciones reutilizables para enviarlas a los puntos de contacto.

Puede agregar una o más plantillas a la plantilla de notificaciones.

El nombre de la plantilla de notificación debe ser exclusivo. No puede haber dos plantillas con el mismo nombre en la misma plantilla de notificación o en plantillas de notificación distintas. Evite definir plantillas con el mismo nombre que las plantillas predeterminadas, como: `__subject`, `__text_values_list`, `__text_alert_list`, `default.title` y `default.message`.

En la pestaña Puntos de contacto, puede ver una lista de las plantillas de notificaciones.

## Creación de plantillas de notificaciones
<a name="v10-alerting-creating-templates"></a>

**Creación de una plantilla de notificaciones**

1. Elija **Alertas**, **Puntos de contacto**.

1. Elija la pestaña **Plantillas de notificaciones** y, a continuación, **\$1 Agregar plantilla de notificación**.

1. Elija un nombre para la plantilla de notificaciones, como `email.subject`.

1. Escriba el contenido de la plantilla en el campo de contenido.

   Por ejemplo:

   ```
   {{ if .Alerts.Firing -}}
      {{ len .Alerts.Firing }} firing alerts
      {{ end }}
      {{ if .Alerts.Resolved -}}
      {{ len .Alerts.Resolved }} resolved alerts
      {{ end }}
   ```

1. Guarde los cambios.

   `{{ define "email.subject" }}` (donde `email.subject` es el nombre de la plantilla) y `{{ end }}` se agrega automáticamente al inicio y fin del contenido.

**Creación de una plantilla de notificaciones que contenga más de una plantilla**

1. Elija **Alertas**, **Puntos de contacto**.

1. Elija la pestaña **Plantillas de notificaciones** y, a continuación, **\$1 Agregar plantilla de notificación**.

1. Ingrese un nombre para la plantilla de notificaciones general. Por ejemplo, `email`.

1. Escriba cada plantilla en el campo Contenido, lo que incluye `{{ define "name-of-template" }}` y `{{ end }}` al inicio y fin de cada plantilla. Puede utilizar nombres descriptivos para cada una de las plantillas de la plantilla de notificaciones, por ejemplo, `email.subject` o `email.message`. En este caso, no vuelva a utilizar el nombre de la plantilla de notificaciones que ingresó anteriormente.

   En las secciones posteriores se muestran ejemplos detallados de las plantillas que podría crear.

1. Haga clic en Guardar.

## Vista previa de plantillas de notificaciones
<a name="v10-alerting-preview-templates"></a>

Obtenga una vista previa del aspecto que tendrán las plantillas de notificaciones antes de utilizarlas en los puntos de contacto, lo que ayudará a comprender el resultado de la plantilla que va a crear y le permitirá corregir cualquier error antes de guardarla.

**nota**  
Las vistas previas de las notificaciones solo están disponibles para Grafana Alertmanager.

**Vista previa de las plantillas de notificaciones**

1. Elija **Alertas**, **Puntos de contacto**.

1. Elija la pestaña **Plantillas de notificaciones** y, a continuación, **\$1 Agregar plantilla de notificaciones** o edite una plantilla existente.

1. Agregue o actualice el contenido de la plantilla.

   Se proporcionan los datos predeterminados y puede agregar o editar los datos de alertas, así como las instancias de alertas. Puede agregar los datos de alertas directamente en la propia ventana de datos de carga útil o hacer clic en **Seleccionar instancias de alertas** o **Agregar alertas personalizadas**.

1. [Opcional] Para agregar datos de alertas de instancias de alertas existentes:

   1. Elija **Seleccionar instancias de alertas**.

   1. Pase el ratón sobre las instancias de alertas para ver más información acerca de cada instancia de alertas.

   1. Elija **Confirmar** para agregar la instancia de alertas a la carga útil.

1. [Opcional] Para agregar datos de alertas mediante el editor de datos de alertas, elija **Agregar datos personalizados**:

   1. Agregue anotaciones, etiquetas personalizadas o establezca un panel de control o panel.

   1. Seleccione Activar o Resuelta, en función de si quiere agregar alertas resueltas o de activación a la notificación.

   1. Elija **Agregar datos de alerta**.

   1. Elija **Actualizar vista previa** para ver cómo se verá el contenido de la plantilla y los datos de carga útil correspondientes.

   Si hay algún error en la plantilla, se mostrará en la vista previa y podrá corregirlo antes de guardarlo.

1. Guarde los cambios.

## Creación de una plantilla para el asunto del mensaje
<a name="v10-alerting-create-template-subject"></a>

Cree una plantilla para el asunto de un correo electrónico que contenga el número de alertas resueltas y de activación, como en este ejemplo:

```
1 firing alerts, 0 resolved alerts
```

**Creación de una plantilla para el asunto de un correo electrónico**

1. Cree una plantilla denominada `email.subject` con el siguiente contenido:

   ```
   {{ define "email.subject" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Para utilizar la plantilla al crear la integración del punto de contacto, colóquela en el campo **Asunto** con la palabra clave `template`.

   ```
   {{ template "email.subject" . }}
   ```

## Creación de una plantilla para el mensaje de un correo electrónico
<a name="v10-alerting-create-template-message"></a>

Cree una plantilla para el mensaje de un correo electrónico que contenga un resumen de todas las alertas resueltas y de activación, como en este ejemplo:

```
There are 2 firing alerts, and 1 resolved alerts

Firing alerts:

- alertname=Test 1 grafana_folder=GrafanaCloud has value(s) B=1
- alertname=Test 2 grafana_folder=GrafanaCloud has value(s) B=2

Resolved alerts:

- alertname=Test 3 grafana_folder=GrafanaCloud has value(s) B=0
```

**Creación de una plantilla para el mensaje de un correo electrónico**

1. Cree una plantilla de notificaciones denominada `email` con dos plantillas en el contenido: `email.message_alert` y `email.message`.

   La plantilla `email.message_alert` se utiliza para imprimir las etiquetas y los valores de cada alerta resuelta y de activación, mientras que la plantilla `email.message` contiene la estructura del correo electrónico.

   ```
   {{- define "email.message_alert" -}}
   {{- range .Labels.SortedPairs }}{{ .Name }}={{ .Value }} {{ end }} has value(s)
   {{- range $k, $v := .Values }} {{ $k }}={{ $v }}{{ end }}
   {{- end -}}
   
   {{ define "email.message" }}
   There are {{ len .Alerts.Firing }} firing alerts, and {{ len .Alerts.Resolved }} resolved alerts
   
   {{ if .Alerts.Firing -}}
   Firing alerts:
   {{- range .Alerts.Firing }}
   - {{ template "email.message_alert" . }}
   {{- end }}
   {{- end }}
   
   {{ if .Alerts.Resolved -}}
   Resolved alerts:
   {{- range .Alerts.Resolved }}
   - {{ template "email.message_alert" . }}
   {{- end }}
   {{- end }}
   
   {{ end }}
   ```

1. Para utilizar la plantilla al crear la integración del punto de contacto, colóquela en el campo **Cuerpo del texto** con la palabra clave `template`.

   ```
   {{ template "email.message" . }}
   ```

## Creación de una plantilla para el título de un mensaje de Slack
<a name="v10-alerting-create-template-slack-title"></a>

Cree una plantilla para el título de un mensaje de Slack que contenga el número de alertas resueltas y de activación, como en el siguiente ejemplo:

```
1 firing alerts, 0 resolved alerts
```

**Creación de una plantilla para el título de un mensaje de Slack**

1. Cree una plantilla denominada `slack.title` con el siguiente contenido:

   ```
   {{ define "slack.title" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Ejecute la plantilla desde el campo de título de la integración del punto de contacto.

   ```
   {{ template "slack.title" . }}
   ```

## Creación de una plantilla para el contenido de un mensaje de Slack
<a name="v10-alerting-create-template-slack-message"></a>

Cree una plantilla para el contenido de un mensaje de Slack que contenga una descripción de todas las alertas resueltas y de activación, lo que incluye sus etiquetas, anotaciones y la URL del panel.

**nota**  
Esta plantilla es solo para alertas administradas por Grafana. Para usar la plantilla para las alertas administradas por el origen de datos, elimine las referencias a DashboardURL y SilenceURL. Para más información acerca de la configuración de las notificaciones de Prometheus, consulte la [documentación de Prometheus acerca de las notificaciones](https://prometheus.io/docs/alerting/latest/notifications/).

```
1 firing alerts:

[firing] Test1
Labels:
- alertname: Test1
- grafana_folder: GrafanaCloud
Annotations:
- description: This is a test alert
Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1

1 resolved alerts:

[firing] Test2
Labels:
- alertname: Test2
- grafana_folder: GrafanaCloud
Annotations:
- description: This is another test alert
Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1
```

**Creación de una plantilla para el contenido de un mensaje de Slack**

1. Cree una plantilla denominada `slack` con dos plantillas en el contenido: `slack.print_alert` y `slack.message`.

   La plantilla `slack.print_alert` se utiliza para imprimir las etiquetas, las anotaciones y DashboardURL, mientras que la plantilla `slack.message` contiene la estructura de la notificación.

   ```
   {{ define "slack.print_alert" -}}
   [{{.Status}}] {{ .Labels.alertname }}
   Labels:
   {{ range .Labels.SortedPairs -}}
   - {{ .Name }}: {{ .Value }}
   {{ end -}}
   {{ if .Annotations -}}
   Annotations:
   {{ range .Annotations.SortedPairs -}}
   - {{ .Name }}: {{ .Value }}
   {{ end -}}
   {{ end -}}
   {{ if .DashboardURL -}}
     Go to dashboard: {{ .DashboardURL }}
   {{- end }}
   {{- end }}
   
   {{ define "slack.message" -}}
   {{ if .Alerts.Firing -}}
   {{ len .Alerts.Firing }} firing alerts:
   {{ range .Alerts.Firing }}
   {{ template "slack.print_alert" . }}
   {{ end -}}
   {{ end }}
   {{ if .Alerts.Resolved -}}
   {{ len .Alerts.Resolved }} resolved alerts:
   {{ range .Alerts.Resolved }}
   {{ template "slack.print_alert" .}}
   {{ end -}}
   {{ end }}
   {{- end }}
   ```

1. Ejecute la plantilla desde el campo del cuerpo del texto de la integración del punto de contacto:

   ```
   {{ template "slack.message" . }}
   ```

## Creación de plantillas para correo electrónico y Slack con plantillas compartidas
<a name="v10-alerting-create-shared-templates"></a>

En lugar de crear plantillas de notificaciones independientes para cada punto de contacto, como el correo electrónico y Slack, puede compartir la misma plantilla.

Por ejemplo, si quiere enviar un correo electrónico con este asunto y un mensaje de Slack con este título `1 firing alerts, 0 resolved alerts`, puede crear una plantilla compartida.

**Creación de una nueva plantilla compartida**

1. Cree una plantilla denominada `common.subject_title` con el siguiente contenido:

   ```
   {{ define "common.subject_title" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Para el correo electrónico, ejecuta la plantilla desde el campo de asunto de la integración del punto de contacto de correo electrónico:

   ```
   {{ template "common.subject_title" . }}
   ```

1. En el caso de Slack, ejecuta la plantilla desde el campo de título de la integración de puntos de contacto de Slack:

   ```
   {{ template "common.subject_title" . }}
   ```

## Uso de plantillas de notificaciones
<a name="v10-alerting-use-notification-templates"></a>

Use las plantillas en los puntos de contacto para personalizar sus notificaciones.

**Uso de una plantilla al crear un punto de contacto**

1. En el menú **Alertas**, elija la pestaña **Puntos de contacto** para ver una lista de los puntos de contacto existentes.

1. Elija **Nuevo**. Como alternativa, para poder editar un punto de contacto existente, pulse el icono **Editar**.

1. Ingrese las plantillas que desea utilizar en un campo, como **Mensaje** o **Asunto**. Para introducir una plantilla, utilice el formulario y `{{ template "template_name" . }}` *template\$1name* sustitúyalo por el nombre de la plantilla que desee utilizar.

1. Elija **Guardar punto de contacto**.

# Referencia de la plantilla
<a name="v10-alerting-template-reference"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

En esta sección se proporciona información de referencia para crear plantillas.

**Alerta (tipo)**

El tipo de alerta contiene los datos siguientes.


| Name | Tipo | Description (Descripción) | Ejemplo | 
| --- | --- | --- | --- | 
|  Status  |  cadena  |  `firing` o bien `resolved`.  | \$1\$1 .Status \$1\$1 | 
|  Etiquetas  |  KeyValue  |  Un conjunto de etiquetas adjunto a la alerta.  | \$1\$1 .Labels \$1\$1 | 
|  Anotaciones  |  KeyValue  |  Un conjunto de anotaciones adjunto a la alerta.  | \$1\$1 .Annotations \$1\$1 | 
| Valores | KeyValue | Valores de todas las expresiones, incluidas las condiciones clásicas | \$1\$1 .Values \$1\$1 | 
|  StartsAt  |  time.Time  |  Hora en que la alerta empezó a activarse.  | \$1\$1 .StartsAt \$1\$1 | 
|  EndsAt  |  time.Time  |  Se establece solo si se conoce la hora de finalización de una alerta. De lo contrario, se establece en un periodo de tiempo de espera configurable a partir del momento en que se recibió la última alerta.  | \$1\$1 .EndsAt \$1\$1 | 
|  GeneratorURL  |  cadena  |  Enlace para volver a Grafana o a una instancia externa de Alertmanager.  | \$1\$1 .GeneratorURL \$1\$1 | 
|  SilenceURL  |  cadena  |  Un enlace para silenciar la alerta (con las etiquetas de esta alerta rellenadas previamente). Solo para alertas administradas por Grafana.  | \$1\$1 .SilenceURL\$1\$1 | 
|  DashboardURL  |  cadena  |  Enlace al panel de control de Grafana, si la regla de alerta pertenece a uno. Solo para alertas administradas por Grafana.  | \$1\$1 .DashboardURL \$1\$1 | 
|  PanelURL  |  cadena  |  Enlace al panel de paneles de control de Grafana, si la regla de alerta pertenece a uno. Solo para alertas administradas por Grafana.  | \$1\$1 .PanelURL \$1\$1 | 
|  Huella digital  |  cadena  |  Huella digital que se puede utilizar para identificar la alerta.  | \$1\$1 .Fingerprint \$1\$1 | 
|  ValueString  |  cadena  |  Una cadena que contiene las etiquetas y el valor de cada expresión reducida de la alerta.  | \$1\$1 .ValueString \$1\$1 | 

 **ExtendedData**

El ExtendedData objeto contiene las siguientes propiedades.


| Name | Tipo | Description (Descripción) | Ejemplo | 
| --- | --- | --- | --- | 
|  Receptor  |  `string`  |  El nombre del punto de contacto que envía la notificación.  |  `{{ .Receiver }}`  | 
|  Status  |  `string`  |  El estado es `firing` si se activa al menos una alerta, de lo contrario `resolved`.  |  `{{ .Status }}`  | 
|  Alertas  |  `[]Alert`  |  Lista de todas las alertas en activación y resueltas de esta notificación.  |  `There are {{ len .Alerts }} alerts`  | 
|  Alertas en activación  |  `[]Alert`  |  Lista de todas las alertas en activación de esta notificación.  |  `There are {{ len .Alerts.Firing }} firing alerts`  | 
|  Alertas resueltas  |  `[]Alert`  |  Lista de todas las alertas resueltas de esta notificación.  |  `There are {{ len .Alerts.Resolved }} resolved alerts`  | 
|  GroupLabels  |  `KeyValue`  |  Etiquetas que agrupan estas alertas en esta notificación.  |  `{{ .GroupLabels }}`  | 
|  CommonLabels  |  `KeyValue`  |  Etiquetas comunes a todas las alertas incluidas en esta notificación.  |  `{{ .CommonLabels }}`  | 
|  CommonAnnotations  |  `KeyValue`  |  Anotaciones comunes a todas las alertas de esta notificación.  |  `{{ .CommonAnnotations }}`  | 
|  ExternalURL  |  `string`  |  Un enlace al espacio de trabajo de Grafana o al Alertmanager que envió esta notificación.  |  `{{ .ExternalURL }}`  | 

**KeyValue type**

El `KeyValue` tipo es un conjunto de pares de key/value cadenas que representan etiquetas y anotaciones.

Además del acceso directo a los datos almacenados como `KeyValue`, también hay métodos para ordenar, eliminar y transformar los datos.


| Name | Argumentos | Devuelve | Notas | Ejemplo | 
| --- | --- | --- | --- | --- | 
|  SortedPairs  |    |  Lista ordenada de pares de cadenas de claves y valores  |    | `{{ .Annotations.SortedPairs }}` | 
|  Quitar  |  []string  |  KeyValue  |  Devuelve una copia del Key/Value mapa sin las claves indicadas.  | `{{ .Annotations.Remove "summary" }}` | 
|  Nombres  |    |  []string  |  Lista de nombres  | `{{ .Names }}` | 
|  Valores  |    |  []string  |  Lista de valores  | `{{ .Values }}` | 

**Tiempo**

El tiempo proviene del paquete [https://pkg.go.dev/time#Time](https://pkg.go.dev/time#Time) de Go. Puede imprimir una fecha y hora en varios formatos diferentes. Por ejemplo, para imprimir la fecha y hora a la que se activó una alerta en el formato `Monday, 1st January 2022 at 10:00AM`, escriba la siguiente plantilla:

```
{{ .StartsAt.Format "Monday, 2 January 2006 at 3:04PM" }}
```

Puede encontrar una referencia al formato de hora de Go [aquí](https://pkg.go.dev/time#pkg-constants).

# Administración de puntos de contacto
<a name="v10-alerting-manage-contactpoints"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

La vista de lista de **Puntos de contacto** muestra todos los puntos de contacto y las plantillas de notificación existentes.

En la pestaña **Puntos de contacto**, puede hacer lo siguiente:
+ Buscar nombres y tipos de puntos de contacto e integraciones.
+ Ver todos los puntos de contacto e integraciones existentes.
+ Ver para cuántas políticas de notificación se utiliza cada punto de contacto e ir directamente a las políticas de notificación vinculadas.
+ Ver el estado de las entregas de notificaciones.
+ Exportar puntos de contacto individuales o todos los puntos de contacto en formato JSON, YAML o Terraform.
+ Eliminar los puntos de contacto que la política de notificaciones no utilice.

En la pestaña **Plantillas de notificaciones**, puede hacer lo siguiente:
+ Ver, editar, copiar o eliminar las plantillas de notificaciones existentes.

# Silenciamiento de las notificaciones de alertas
<a name="v10-alerting-silences"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Para poder suprimir las notificaciones de alerta, *siléncielas*. Un silencio solo impide que se creen notificaciones; los silencios no impiden que se evalúen las reglas de alerta ni impiden que las instancias de alerta se muestren en la interfaz de usuario. Al silenciar una alerta, se especifica un periodo de tiempo para que se suprima.

**nota**  
Para suprimir las notificaciones de alertas a intervalos de tiempo regulares (por ejemplo, durante los periodos de mantenimiento habituales), utilice [Temporizadores de silencio](v10-alerting-manage-muting.md) en lugar de silencios.

**Adición de un silencio**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Silencios**.

1. Elija un Alertmanager en el menú desplegable **Alertmanager**.

1. Elija **Crear silencio**.

1. Seleccione la fecha de inicio y finalización en **Inicio y finalización del silencio** para indicar cuándo debe entrar en vigor el silencio y cuándo debe terminar.

1. Como alternativa a establecer una hora de finalización, en **Duración**, especifique durante cuánto tiempo se aplicará el silencio. Esto actualiza automáticamente la hora de finalización en el campo **Inicio y finalización del silencio**.

1. En los campos **Etiqueta** y **Valor**, ingrese una o más *etiquetas coincidentes*. Los comparadores determinan a qué reglas se aplica el silencio. Las alertas que coincidan (en estado de activación) se mostrarán en el campo **Instancias de alertas afectadas**.

1. Si lo desea, agregue un **comentario** que describa el silencio.

1. Seleccione **Enviar**.

**Edición de un silencio**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Silencios** para ver la lista de silencios existentes.

1. Busque el silencio que quiere modificar y, a continuación, elija **Editar** (icono de lápiz).

1. Haga los cambios deseados y, a continuación, elija **Guardar** para guardar los cambios.

Puede editar un silencio existente si selecciona el icono **Editar** (lápiz).

**Creación de un vínculo de la URL a un formulario de silencio**

Al enlazar a un formulario de silencio, proporcione las etiquetas coincidentes y comentario a través de los parámetros de consulta `matcher` y `comment`. El parámetro `matcher` debe tener el siguiente formato `[label][operator][value]`, donde el parámetro `operator` ser uno de los siguientes: `=` (igual, no expresión regular), `!=` (distinto, no expresión regular), `=~` (igual, expresión regular), `!~` (distinto, expresión regular). La URL puede contener muchos parámetros de consulta con la clave `matcher`. Por ejemplo, para crear un vínculo a un formulario de silencio con etiquetas de coincidencia `severity=critical` y `cluster!~europe-.*`, y un comentario `Silence critical EU alerts`, cree una URL `https://mygrafana/alerting/silence/new?matcher=severity%3Dcritical&matcher=cluster!~europe-*&comment=Silence%20critical%20EU%20alert`.

Para vincular a una nueva página de silencios de un Alertmanager externo, agregue un parámetro de consulta `alertmanager`.

**Eliminación de un silencio**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Silencios** para ver la lista de silencios existentes.

1. Seleccione el silencio que quiere finalizar y elija **Desactivar silencio**. Esto pone fin a la supresión de alertas.
**nota**  
La desactivación del silencio finaliza la supresión de alertas, como si la hora de finalización estuviera configurada para la hora actual. Los silencios que han finalizado (automática o manualmente) se conservan y se enumeran durante cinco días. No puede eliminar un silencio de la lista manualmente.

# Visualización y filtrado de las reglas de alertas
<a name="v10-alerting-manage-rules-viewfilter"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

En la página **Alertas** se muestran las reglas de alerta. De forma predeterminada, las reglas se agrupan por tipos de orígenes de datos. La sección **Grafana** muestra las reglas administradas por Grafana. Las reglas de alertas para los orígenes de datos compatibles con Prometheus también se muestran aquí. Puede ver las reglas de alertas de los orígenes de datos compatibles con Prometheus, pero no puede editarlas.

La sección de Mimir/Cortex/Loki reglas enumera todas las reglas de las fuentes de datos de Mimir, Cortex o Loki. Las reglas de alerta en la nube también se enumeran en esta sección.

Al administrar grandes volúmenes de alertas, puede usar las funciones ampliadas de búsqueda de reglas de alerta para filtrar por carpetas, grupos de evaluación y reglas. Además, puede filtrar las reglas de alerta por sus propiedades, como etiquetas, estado, tipo y funcionamiento.

## Visualización de reglas de alertas
<a name="v10-alerting-manage-rules-view"></a>

Con las alertas de Grafana, puede ver todas sus alertas en una página.

**Visualización de detalles de las alertas**

1. En la consola de Grafana, en el menú de Grafana, elija **Alerta**, **Reglas de alertas**. De forma predeterminada, se muestra la vista de lista.

1. En **Ver como**, para poder alternar entre las vistas agrupadas, de lista y de estado, elija la opción que prefiera.

1. Amplíe la fila de reglas para ver las etiquetas de las reglas, las anotaciones, los orígenes de datos, las consultas de reglas y una lista de las instancias de alerta resultantes de la regla.

Desde esta página, también puede hacer copias de una regla de alertas para reutilizar las reglas existentes.

## Exportación de reglas de alerta
<a name="v10-alerting-manage-rules-export"></a>

Puede exportar reglas a YAML o JSON en el espacio de trabajo de Grafana.
+ Elija el icono **Exportar grupo de reglas** situado junto a cada grupo de reglas de alerta para exportarlo a YAML, JSON o Terraform.
+ Elija **Exportar reglas** para exportar todas las reglas de alertas administradas de Grafana a YAML, JSON o Terraform.
+ Seleccione **Más**, **Modificar exportación** junto a cada regla de alertas individual de un grupo para editar las reglas de alerta aprovisionadas y exportar una versión modificada.

## Visualización de las definiciones de consultas de las alertas aprovisionadas
<a name="v10-alerting-manage-rules-querydef"></a>

Vea las definiciones de consultas de solo lectura de las alertas aprovisionadas. Compruebe rápidamente si las consultas de reglas de alertas son correctas, sin tener que buscar definiciones de reglas en el repositorio definido como código.

**Vista agrupada**

En la vista agrupada se muestran las reglas de alerta de Grafana agrupadas por carpeta y las reglas de alerta de Loki o Prometheus agrupadas por `namespace` y `group`. Esta es la vista de lista de reglas predeterminada, destinada a administrar las reglas. Puede expandir cada grupo para ver una lista de las reglas de este grupo. Expanda una regla para ver sus detalles. También puede expandir los botones de acción y las alertas resultantes de la regla para ver sus detalles.

**Vista de estado**

En la vista de estado se muestran las reglas de alerta agrupadas por estado. Utilice esta vista para obtener información general de qué reglas se encuentran en qué estado. Se puede expandir cada regla para ver sus detalles. Los botones de acción, las alertas generadas por esta regla y las alertas se pueden expandir aún más para ver sus detalles.

## Filtrado de las reglas de alertas
<a name="v10-alerting-manage-rules-filter"></a>

Puede filtrar las reglas de alerta que aparecen en la página **Alertas** de varias maneras.

**Filtrado de las reglas de alertas**

1. En **Seleccionar orígenes de datos**, seleccione un origen de datos. Puede ver las reglas de alertas que consultan el origen de datos seleccionado.

1. En **Buscar por etiqueta**, ingrese los criterios de búsqueda mediante los selectores de etiquetas. Por ejemplo, `environment=production;region=~US|EU,severity!=warning`.

1. En **Filtrar alertas por estado**, seleccione el estado de alerta que quiere ver. Puede ver las reglas de alertas que coinciden con ese estado. Las reglas que coinciden con otros estados están ocultas.

# Temporizadores de silencio
<a name="v10-alerting-manage-muting"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Un temporizador de silencio es un intervalo de tiempo recurrente en el que no se generan ni envían nuevas notificaciones para una política. Úselos para evitar que las alertas se activen durante un periodo específico y recurrente, por ejemplo, un periodo de mantenimiento habitual.

Al igual que los silencios, los temporizadores de silencio no impiden que se evalúen las reglas de alerta ni impiden que las instancias de alerta se muestren en la interfaz de usuario. Solo impiden la creación de notificaciones.

Puede configurar los temporizadores de silencio administrados por Grafana, así como los temporizadores de silencio para un origen de datos de Alertmanager externo.

## Los temporizadores de silencio frente a los silencios
<a name="v10-alerting-manage-muting-compare"></a>

En la siguiente tabla se muestran las diferencias entre los temporizadores de silencio y los silencios.


| Temporizador de silencio | Silencio | 
| --- | --- | 
| Utiliza definiciones de intervalos de tiempo que pueden repetirse. | Tiene unas horas de inicio y finalización fijas. | 
| Se crea y luego se agrega a las políticas de notificaciones. | Utiliza etiquetas para compararlas con una alerta y determinar si se debe silenciar o no. | 

## Adición de un temporizador de silencio
<a name="v10-alerting-manage-muting-add"></a>

Puede crear tiempos de silencio en el espacio de trabajo de Grafana.

**Adición de un temporizador de silencio**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Políticas de notificación** y, a continuación, seleccione la pestaña **Temporizadores de silencio**.

1. En el menú desplegable **Alertmanager**, seleccione el Alertmanager que desea editar.

1. Elija el botón **\$1 Agregar temporizador de silencio**.

1. Rellene el formulario para crear un [intervalo de tiempo](#v10-alerting-manage-muting-interval) que coincida con el temporizador de silencio.

1. Guarde el temporizador de silencio.

## Adición de un temporizador de silencio a una política de notificaciones
<a name="v10-alerting-manage-muting-add-notif"></a>

Una vez que tenga un temporizador de silencio, para utilizarlo, agréguelo a la política de notificaciones que quiere silenciar a intervalos regulares.

**Adición de un temporizador de silencio a una política de notificaciones**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Políticas de notificación** y, a continuación, seleccione la pestaña **Políticas de notificación**.

1. Seleccione la política de notificaciones a la que quiere agregar el temporizador de silencio y elija **…**, **Editar**.

1. En el menú desplegable **Temporizadores de silencio**, seleccione los temporizadores de silencio que quiere agregar a la política.

1. Guarde los cambios.

## Intervalos de tiempo
<a name="v10-alerting-manage-muting-interval"></a>

Un intervalo de tiempo es una duración específica en la que se suprimen las alertas. La duración suele consistir en un intervalo de tiempo específico y los días de la semana, el mes o el año. 

Las opciones de intervalo de tiempo de compatibilidad son las siguientes:
+ **Intervalo de tiempo**: tiempo que incluye la hora de inicio y no incluye la hora de finalización (en UTC, si no se ha seleccionado ninguna ubicación; en caso contrario, hora local).
+ **Ubicación**: establece la ubicación de la hora; el intervalo de tiempo se muestra en la hora local de la ubicación.
+ **Días de la semana**: el día o intervalo de días de la semana. Por ejemplo, `monday:thursday`.
+ **Días del mes**: fechas de un mes. Los valores pueden oscilar entre `1` y `31`. Los valores negativos especifican los días del mes en orden inverso, por lo que `-1` representa el último día del mes.
+ **Meses**: meses del año con el nombre numérico o completo del mes natural. Por ejemplo, `1, may:august`.
+ **Años**: el año o los años del intervalo. Por ejemplo, `2023:2024`.

Cada uno de estos elementos puede ser una lista, y al menos uno de los elementos del elemento debe estar satisfecho para que coincida. Los campos también admiten intervalos mediante el uso de `:`. Por ejemplo, `monday:thursday`.

Si un campo se deja en blanco, cualquier momento coincidirá con el campo. Para que un instante coincida con un intervalo de tiempo completo, todos los campos deben coincidir. Un temporizador de silencio puede contener varios intervalos de tiempo.

Si desea especificar una duración exacta, especifique todas las opciones necesarias para esa duración. Por ejemplo, si quiere crear un intervalo de tiempo para el primer lunes del mes (marzo, junio, septiembre y diciembre) entre las 12:00 y las 24:00 (hora UTC), la especificación del intervalo de tiempo podría ser:
+ Intervalo de tiempo:
  + Hora de inicio: `12:00`
  + Hora de finalización: `24:00`
+ Días de la semana: `monday`
+ Meses: `3, 6, 9, 12`
+ Días del mes: `1:7`

# Visualización del estado y de la integridad de las reglas de alertas
<a name="v10-alerting-manage-rulestate"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

El estado y la integridad de las reglas de alertas proporcionan varios indicadores clave del estado de las alertas.

Existen tres componentes:
+ [Estado de la regla de alerta](#v10-alerting-manage-rulestate-state)
+ [Estado de instancia de alerta](#v10-alerting-manage-rulestate-instance)
+ [Estado de la regla de alerta](#v10-alerting-manage-rulestate-health)

Aunque están relacionados, cada componente transmite información sutilmente diferente.

**Visualización del estado y la integridad de las reglas de alertas**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Reglas de alerta** para ver la lista de alertas existentes.

1. Elija una regla de alerta para ver su estado.

## Estado de la regla de alerta
<a name="v10-alerting-manage-rulestate-state"></a>

Una regla de alertas puede tener cualquiera de los siguientes estados:


| Estado | Description (Descripción) | 
| --- | --- | 
| Normal | Ninguna de las series temporales devueltas por el motor de evaluación está en estado pending o firing. | 
| Pendiente | Al menos una de las series temporales devueltas por el motor de evaluación está pending. | 
| Activación | Al menos una de las series temporales devueltas por el motor de evaluación está firing. | 

**nota**  
Las alertas pasan primero a `pending` y después a `firing`, por lo que se necesita al menos dos ciclos de evaluación antes de que se active una alerta.

## Estado de instancia de alerta
<a name="v10-alerting-manage-rulestate-instance"></a>

Una instancia de alerta puede tener cualquiera de los siguientes estados:


| Estado | Description (Descripción) | 
| --- | --- | 
| Normal | El estado de una alerta que no es pending ni firing. Todo funciona según lo esperado. | 
| Pendiente | Estado de una alerta que ha estado activa durante menos del tiempo umbral configurado. | 
| Alertas | Estado de una alerta que ha estado activa durante más del tiempo umbral configurado. | 
| Sin datos | No se ha recibido ningún dato del intervalo de tiempo configurado. | 
| Alertas | Se produjo un error al intentar evaluar una regla de alerta. | 

## Conservación del último estado
<a name="v10-alerting-manage-rulestate-keepstate"></a>

Se puede configurar una regla de alerta para mantener el último estado cuando se encuentre un estado `NoData` o `Error`. Esto evitará que las alertas se activen y que se resuelvan y se vuelvan a activar. Al igual que en una evaluación normal, la regla de alertas pasará de `pending` a `firing` una vez transcurrido el periodo pendiente.

## Estado de la regla de alerta
<a name="v10-alerting-manage-rulestate-health"></a>

Una regla de alerta puede tener uno de los siguientes estados.


| Estado | Description (Descripción) | 
| --- | --- | 
| Correcto | No hay errores al evaluar la regla de alerta. | 
| Error | Se ha producido un error al evaluar la regla de alerta. | 
| NoData | Ausencia de datos en al menos una serie temporal devuelta durante la evaluación de una regla. | 
| \$1estado\$1, KeepLast | La regla habría recibido otro estado, pero se configuró para mantener el último estado de la regla de alerta. | 

## Alertas especiales NoData de error
<a name="v10-alerting-manage-rulestate-special"></a>

Cuando la evaluación de una regla de alerta produce el estado `NoData` o `Error`, Grafana Alerting generará instancias de alerta que tienen las siguientes etiquetas adicionales.


| Etiqueta | Description (Descripción) | 
| --- | --- | 
| alertname | DatasourceNoData o DatasourceError según el estado. | 
| datasource\$1uid | UID del origen de datos que provocó el estado. | 

**nota**  
Para generar las otras etiquetas, tendrá que establecer la gestión de la regla de ausencia de datos o de los errores en `NoData` o `Error` en la regla de alerta, tal y como se describe en el tema [Configuración de las reglas de alertas administradas por Grafana](v10-alerting-configure-grafanamanaged.md).

Puede gestionar estas alertas de la misma forma que las alertas normales, por ejemplo, agregar silencios, dirigirlas a un punto de contacto, etc.

# Visualización y filtrado por grupos de alertas
<a name="v10-alerting-manage-viewfiltergroups"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Los grupos de alertas muestran alertas agrupadas de una instancia de Alertmanager. De forma predeterminada, las alertas de alerta se agrupan según las claves de etiqueta de la política predeterminada en las políticas de notificaciones. Al agrupar las reglas de alerta comunes en un solo grupo de alertas, se evita que se activen reglas de alerta duplicadas.

Puede ver los grupos de alertas y también filtrar las reglas de alerta que coincidan con criterios específicos.

**Visualización de grupos de alertas**

1. En la consola de Grafana, en el menú de Grafana, elija **Alertas**.

1. Elija **Grupos** para ver los grupos existentes.

1. En el menú desplegable **Alertmanager**, seleccione un Alertmanager externo como origen de datos.

1. En el menú desplegable **Personalizar grupo por**, seleccione una combinación de etiquetas para ver una agrupación distinta de la predeterminada. Resulta útil para depurar o verificar la agrupación de políticas de notificaciones.

Si una alerta no contiene etiquetas especificadas en la agrupación de la política raíz o en la agrupación personalizada, se agrega a un grupo comodín con un encabezado de `No grouping`.

Puede filtrar las alertas por etiqueta o estado de las alertas.

**Filtrado por etiqueta**
+ En **Buscar**, ingrese una etiqueta existente para ver las alertas que coincidan con la etiqueta.

  Por ejemplo, `environment=production,region=~US|EU,severity!=warning`.

**Filtrado por estado**
+ En **Estados**, seleccione los estados Activo, Suprimido o Sin procesar para ver las alertas que coincidan con el estado seleccionado. El resto de alertas se ocultan.

# Visualización de los errores de notificación
<a name="v10-alerting-manage-viewnotificationerrors"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 10.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 9.x de Grafana, consulte [Uso de la versión 9 de Grafana](using-grafana-v9.md).  
Para los espacios de trabajo de Grafana que admiten la versión 8.x de Grafana, consulte [Uso de la versión 8 de Grafana](using-grafana-v8.md).

Vea los errores de notificación y comprenda por qué no se enviaron o no se recibieron.

**nota**  
Esta característica solo se admite para Grafana Alertmanager.

**Visualización de los errores de notificación**

1. En el menú de la izquierda, elija **Alertas** y, luego, **Puntos de contacto**.

   Si se produce un error del algún punto de contacto, aparecerá un mensaje en la esquina derecha del espacio de trabajo para indicarle que hay errores y la cantidad de errores.

1. Seleccione un punto de contacto para ver los detalles de los errores.

   Los detalles de los errores se muestran si pasa el ratón por encima del icono de error.

   Si un punto de contacto tiene más de una integración, verá todos los errores de cada una de las integraciones de la lista.

1. En la columna Estado, consulte el estado de la notificación.

   Puede ser Correcto, Sin intentos o Error.