Überwachungsbenachrichtigungen einrichten

Die Überwachungs-Dashboards enthalten mehrere vordefinierte Warnmeldungen. Wenn sich der Status einer Warnmeldung ändert, werden Benachrichtigungen versendet. Um Warnmeldungen von Grafana zu erhalten, musst du einen Benachrichtigungskanal konfigurieren.

Grafana unterstützt verschiedene Benachrichtigungstypen (E-Mail, Slack, Webhooks usw.). Weitere unterstützte Benachrichtigungstypen findest du in der Grafana-Dokumentation.

In diesem Dokument wird die Einrichtung gängiger Benachrichtigungskanäle wie E-Mail, Slack, PagerDuty und Webhooks behandelt.

Vergewissere dich vor dem Einrichten einer Benachrichtigung, dass deine Überwachungscontainer eingerichtet und aktiv sind.

E-Mail

  1. Konfiguriere die SMTP-Einstellungen in der Datei 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. Starte Grafana neu.
    docker-compose -f monitoring-compose.yml up -d
  3. Greife im Bereich Alerting auf Notification channels zu.
    Notification channels
  4. Gib deine E-Mail-Adresse ein, und teste deine Einrichtung, indem du auf den Button Send Test klickst.
    Send Test
    Bei korrekter Konfiguration solltest du eine E-Mail ähnlich der folgenden erhalten:
    E-Mail von Grafana
    Wenn dies nicht der Fall ist, überprüfe die Grafana-Containerprotokolle, um das Problem zu debuggen.
  5. Klicke auf Save, um deine Einrichtung zu speichern. Anschließend erhältst du Warnmeldungen von Grafana. Weitere Details findest du in der Dokumentation zu E-Mail-Benachrichtigungen von Grafana.

Slack

  1. Erstelle eine Slack-App, indem du einen Namen eingibst (z. B. Warnmeldung) und einen Workspace zum Installieren der App auswählst.
  2. Klicke auf den Button Eingehende Webhooks, um dieses Feature zu deiner App hinzuzufügen.
    Eingehende Webhooks
  3. Klicke auf den Umschalter Eingehende Webhooks aktivieren, um das Feature zu aktivieren, und klicke dann auf Neuen Webhook zum Workspace hinzufügen.
    Neuen Webhook zum Workspace hinzufügen
  4. Wähle einen Kanal aus, in dem die App posten soll, und klicke auf den Button Autorisieren, um deine App zu autorisieren.
  5. Kopiere die Webhook-URL (z. B. https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX), um die Slack-Benachrichtigung in Grafana einzurichten. Teste deine Einrichtung, indem du auf den Button Send Test klickst. Bei korrekter Konfiguration solltest du eine Nachricht zum konfigurierten Kanal ähnlich der folgenden erhalten:
    Slack-Benachrichtigung
    Wenn dies nicht der Fall ist, überprüfe die Grafana-Containerprotokolle, um das Problem zu debuggen.
  6. Klicke auf Save, um deine Einrichtung zu speichern. Anschließend erhältst du Warnmeldungen von Grafana. Weitere Details findest du in der Dokumentation zu Slack-Benachrichtigungen von Grafana.

PagerDuty

  1. Füge einen neuen Service hinzu (z. B. https://XXXX.pagerduty.com/services/new), und wähle Use our API directly unter Integration Type aus.
    Service hinzufügen
  2. Kopiere den Integrationsschlüssel (z. B. de7439f367354513b9e1ba4042f0e3b8), um die PagerDuty-Benachrichtigung in Grafana einzurichten. Teste deine Einrichtung, indem du auf den Button Send Test klickst. Bei korrekter Konfiguration solltest du eine Warnmeldung auf der PagerDuty-Warnmeldungsseite ähnlich der folgenden erhalten:
    PagerDuty-Benachrichtigung
    Wenn dies nicht der Fall ist, überprüfe die Grafana-Containerprotokolle, um das Problem zu debuggen.
  3. Klicke auf Save, um deine Einrichtung zu speichern. Anschließend erhältst du Warnmeldungen von Grafana. Weitere Details findest du in der Dokumentation zu PagerDuty-Benachrichtigungen von Grafana.

Webhooks

Du kannst auch einen Webhook-Server einrichten, um Warnmeldungen zu empfangen.

  1. Richte Webhook-Benachrichtigungen in Grafana ein. Teste deine Einrichtung, indem du auf den Button Send Test klickst. Bei korrekter Konfiguration solltest du eine JSON-Payload ähnlich der folgenden erhalten:
    {
        "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"
    }
    
    Wenn dies nicht der Fall ist, überprüfe die Grafana-Containerprotokolle, um das Problem zu debuggen.
  2. Klicke auf Save, um deine Einrichtung zu speichern. Anschließend erhältst du Warnmeldungen von Grafana. Weitere Details findest du in der Dokumentation zu Webhook-Benachrichtigungen von Grafana.