

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.

# Creación de plantillas de notificaciones
<a name="v9-alerting-create-templates"></a>

****  
Este tema de documentación está diseñado para los espacios de trabajo de Grafana que admiten la **versión 9.x de Grafana**.  
Para los espacios de trabajo de Grafana que admiten la versión 10.x de Grafana, consulte [Uso de la versión 10 de Grafana](using-grafana-v10.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="v9-alerting-creating-templates"></a>

**Creación de una plantilla de notificaciones**

1. Haga clic en **Agregar plantilla**.

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. Haga clic en Guardar.

   `{{ 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. Haga clic en **Agregar plantilla**.

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 siguientes se muestran ejemplos detallados de las plantillas que podría crear.

1. Haga clic en Guardar.

## Creación de una plantilla para el asunto de un correo electrónico
<a name="v9-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="v9-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="v9-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. Para utilizar la plantilla al crear la integración del punto de contacto, colóquela en el campo **Título** con la palabra clave `template`.

   ```
   {{ template "slack.title" . }}
   ```

## Creación de una plantilla para el contenido de un mensaje de Slack
<a name="v9-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:

```
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. 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 "slack.message" . }}
   ```

## Creación de plantillas para correo electrónico y Slack con plantillas compartidas
<a name="v9-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="v9-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**, seleccione **Puntos de contacto** para ver una lista de los puntos de contacto existentes.

1. Elija **Agregar punto de contacto**. Como alternativa, para editar un punto de contacto existente, puede seleccionar el icono **Editar** (lápiz) situado junto al punto de contacto que desee editar.

1. Ingrese las plantillas que quiera usar en uno o más campos, 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. Haga clic en **Guardar punto de contacto**.