Zum Inhalt

Slack

Setup

1. Slack-App erstellen

api.slack.comCreate New AppFrom Scratch.

Name: „Vesana Alerts".

2. Incoming Webhooks aktivieren

App-Settings → Incoming Webhooks → Toggle „Activate Incoming Webhooks".

3. Webhook-URL erzeugen

Add New Webhook to Workspace → Channel auswählen → Allow.

Slack zeigt eine URL der Form https://hooks.slack.com/services/T.../B.../....

4. In Vesana hinterlegen

/notification-channelsNeuer Channel → Typ Slack:

Feld Wert
Name „Slack #alerts"
Webhook-URL aus Schritt 3
Severity-Filter nur CRIT / WARN+ / alle
Recovery-Notifications Ja / Nein

Format

Vesana schickt strukturierte Slack-Messages mit:

  • Severity-Farbe (rot/gelb/grün als Attachment-Color)
  • Host-Name und Service-Name als Header
  • Plugin-Output als Body
  • Buttons:
    • Ack — direkter Acknowledge ohne Browser
    • Host öffnen — Deep-Link
🔴 CRITICAL — web01.acme.local — Disk /var
─────────────────────────────────────────
Disk usage 96.4% (Threshold 95%)
─────────────────────────────────────────
[Ack]  [Host öffnen]
─────────────────────────────────────────
Tenant: Acme · Profil: Linux Web Server

Interactive Actions

Damit „Ack" direkt aus Slack funktioniert, braucht Slack einen Endpoint zum Zurückrufen:

  • Interactivity & Shortcuts in der Slack-App aktivieren
  • Request-URL: https://deine-domain.tld/api/v1/integrations/slack/interaction
  • Signing-Secret aus der Slack-App in Vesana-Channel hinterlegen

Ohne Signing-Secret läuft die Integration im Read-Only-Modus (Buttons öffnen nur den Browser).

Mehrere Channels

Ein Slack-Channel pro Severity ist üblich:

  • #alerts-critical — nur CRIT
  • #alerts-warn — WARN+
  • #alerts-recovery — Recovery-Notifications

Alert-Rules verweisen auf die passenden Channels.

Threading

Aktuell kein Threading — jeder Alert ist eine eigene Message. Bei Gruppierung (siehe Alert Rules) wird die Gruppe als ein Message-Block geschickt.

Anschluss