Configurar las notificaciones de supervisión

Existen diversas alertas predefinidas en los paneles de supervisión. Cuando una alerta cambia de estado, se envían notificaciones. A fin de recibir alertas de Grafana, debes configurar un canal de notificaciones.

Grafana admite varios tipos de notificación (correo electrónico, Slack, Webhooks, etc.). Consulta la documentación de Grafana para consultar cuáles son los tipos de notificación admitidos.

En este documento, se brinda información acerca de la configuración de los canales de notificación comunes, como correo electrónico, Slack, PagerDuty y Webhooks.

Antes de configurar una notificación, asegúrate de que los contenedores de supervisión estén activos y en funcionamiento.

Correo electrónico

  1. Configura SMTP en el archivo monitoring-compose.yml.
    services:
      ...
      grafana:
      ...
        environment:
          GF_SECURITY_ADMIN_PASSWORD: ${GF_SECURITY_ADMIN_PASSWORD:?Missing env GF_SECURITY_ADMIN_PASSWORD for Grafana admin password}
          WA_PROMETHEUS_ENDPOINT: ${WA_PROMETHEUS_ENDPOINT:-http://prometheus:9090}
          GF_SERVER_ROOT_URL: your-grafana-public-endpoint #(ex. https://foo.bar.com:3000)
          GF_SMTP_ENABLED: 1
          GF_SMTP_HOST: your-smtp-host #(ex. smtp.gmail.com:465)
          GF_SMTP_USER: your-smtp-auth-user #(ex. you@email.com)
          GF_SMTP_PASSWORD: your-smtp-auth-password
          GF_SMTP_SKIP_VERIFY: 1
        depends_on:
          - 'prometheus'
    
  2. Reinicia Grafana.
    docker-compose -f monitoring-compose.yml up -d
  3. Accede a los canales de notificación en el panel de alertas.
    Canales de notificaciones
  4. Introduce tu dirección de correo electrónico y prueba tu configuración haciendo clic en el botón Enviar prueba.
    Enviar prueba
    Si está configurado correctamente, deberías recibir un correo electrónico similar al siguiente:
    Correo electrónico de Grafana
    En caso contrario, revisa los registros de los contenedores de Grafana que se deben depurar.
  5. Haz clic en Guardar para conservar la configuración. Luego, recibirás alertas de Grafana. Consulta la documentación de notificaciones por correo electrónico para obtener más información.

Slack

  1. Crea una app de Slack. Para ello, introduce un nombre (por ej., alerta) y elige un espacio de trabajo para instalar la app.
  2. Haz clic en el botón Webhooks entrantes para agregar esta función a la app.
    Webhooks entrantes
  3. Haz clic en la opción Activar webhooks entrantes para activarla y, a continuación, haz clic en Agregar webhook nuevo a espacio de trabajo.
    Agregar nuevo webhook a Workspace
  4. Elige un canal en el cual la app realizará publicaciones y haz clic en el botón Autorizar para que se autorice la app.
  5. Copia la URL del webhook (por ej., https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX) para configurar la notificación de Slack en Grafana. Prueba la configuración. Para ello, haz clic en el botón Enviar prueba. Si se configuró correctamente, deberías recibir un mensaje sobre el canal configurado similar al siguiente:
    Notificación de Slack
    En caso contrario, revisa los registros de los contenedores de Grafana que se deben depurar.
  6. Haz clic en Guardar para conservar la configuración. Luego, recibirás alertas de Grafana. Consulta la documentación sobre notificaciones de Slack para obtenre más información.

PagerDuty

  1. Agrega un nuevo servicio (como https://XXXX.pagerduty.com/services/new) y selecciona Usar nuestra API directamente como el tipo de integración.
    Agregar un servicio
  2. Copia la clave de integración (como de7439f367354513b9e1ba4042f0e3b8) para configurar una notificación de PagerDuty en Grafana. Prueba la configuración. Para ello, haz clic en el botón Enviar prueba. Si se configuró correctamente, deberías recibir una alerta en la página de alertas de PagerDuty similar a la siguiente:
    Notificación de PagerDuty
    Caso contrario, revisa los registros de contenedores de Grafana que se deben depurar.
  3. Haz clic en Guardar para conservar la configuración. Luego, recibirás alertas de Grafana. Consulta la documentación sobre notificaciones de PagerDuty para obtener más información.

Webhooks

También puedes configurar un servidor de webhook para que reciba alertas.

  1. Configura las notificaciones de Webhook en Grafana. Prueba la configuración. Para ello, haz clic en el botón Enviar prueba. Si se configuró correctamente, recibirás una carga JSON similar a la siguiente:
    {
        "evalMatches": [
            {
                "metric": "High value",
                "tags": null,
                "value": 100
            },
            {
                "metric": "Higher Value",
                "tags": null,
                "value": 200
            }
        ],
        "message": "Someone is testing the alert notification within grafana.",
        "ruleId": 0,
        "ruleName": "Test notification",
        "ruleUrl": "http://localhost:3000/",
        "state": "alerting",
        "title": "[Alerting] Test notification"
    }
    
    En caso contrario, revisa los registros de los contenedores de Grafana que se deben depurar.
  2. Haz clic en Guardar para conservar la configuración. Luego, recibirás alertas de Grafana. Consulta la documentación sobre notificaciones de Webhook para obtener más información.