PDF-Reports¶
Vorschau-Funktion
PDF-Reports sind standardmäßig ausgeschaltet — Menüpunkt, Seite und API sind gesperrt, bis ein Super-Admin den Bereich unter Admin → System → Vorschau-Funktionen freischaltet. Der Bereich ist noch nicht stabil.
Statusberichte als PDF — automatisch nach Zeitplan erzeugt und per E-Mail versandt, oder manuell auf Abruf.
PDF-Reports sind Teil der Reports-Funktion, enthalten in jeder Edition (/reports → Reiter PDF-Berichte, neben den SLA-Berichten). Der Reiter hat die Unterreiter Schedules und History.
Report-Typen¶
| Typ | Inhalt |
|---|---|
| Executive | Management-taugliche Kurzfassung: Health Score, Highlights, Verfügbarkeit, Vorfälle, Kapazitätsprognosen |
| Technisch | zusätzlich SLA-Detailtabelle, Performance-Diagramme, Kapazität, Anomalien |
sla |
Gesamtverfügbarkeit, SLA je Service, Vorfälle, Bewertung — nur über die API wählbar |
Eigene Vorlagen lassen sich nicht hochladen — die Typen sind fest im Produkt hinterlegt.
Geplante Reports¶
Neuer Schedule:
| Feld | Bedeutung |
|---|---|
| Name | „Acme SLA April" |
| Report-Typ | Executive / Technisch |
| Frequenz | Täglich, Wöchentlich, Monatlich, Quartalsweise, Jährlich mit Tag und Uhrzeit — oder Benutzerdefiniert (Cron-Expression, z. B. 0 8 * * 1 = montags um 08:00; Wochentag 0 und 7 = Sonntag) |
| Zeitzone | vorbelegt mit der Zeitzone der Instanz (Admin → Benachrichtigungen → E-Mail & Meldungen), sonst UTC |
| Empfänger (To), CC (optional) | Mail-Adressen |
| Branding | Firmenname, Primärfarbe, Footer-Text |
| Anschreiben (optional) | Text über dem Bericht |
| Aktiviert | Zeitplan ein-/ausschalten |
Über die API lassen sich zusätzlich ein Ausschnitt (scope: Hosts und/oder Tags), BCC-Empfänger und ein Logo setzen. Mit Tags enthält der Bericht Geräte, die mindestens eines der Tags tragen; zusammen mit Hosts gilt die Schnittmenge. Der Ausschnitt gilt auch für Anomalien und Prognosen.
Beispiel (API):
name: "Acme Monthly SLA"
report_type: sla
cron_expression: "0 6 1 * *" # erster Tag im Monat um 06:00
scope:
tags: ["kunde-acme"]
recipients:
to: ["acme-ops@example.com"]
cc: ["acme-management@example.com"]
timezone: "Europe/Rome"
Manuelle Generierung¶
Jetzt generieren öffnet den Dialog „Report jetzt generieren" mit denselben Parametern und Generieren & Senden. Ohne Empfänger wird nur erzeugt, nicht versendet; das PDF steht danach unter History zum Download („PDF herunterladen").
Render-Pipeline¶
flowchart LR
SCHED[Zeitplan] --> DATA[Daten holen]
DATA --> HTML[HTML rendern]
HTML --> PDF[PDF via WeasyPrint]
PDF --> STORE[Ablage]
PDF --> MAIL[E-Mail mit Anhang]
Die PDFs erzeugt WeasyPrint (aktuell Version 70) — ohne Headless-Browser. Geräte- und Firmennamen aus dem Branding werden dabei nie als Code interpretiert.
Logo¶
Ein eigenes Logo je Zeitplan (PNG/JPG/SVG, max. 2 MB) lässt sich derzeit nur über die API hochladen (POST /api/v1/reports/upload-logo).
Speicherort¶
Erzeugte PDFs und hochgeladene Logos liegen auf dem dauerhaften Speicher der Instanz (eigenes Docker-Volume) und überstehen Updates. PDFs werden 90 Tage aufbewahrt und danach automatisch bereinigt; die Frist ist fest. Unter History sind sie durchsuch- und herunterladbar.
Mail-Versand¶
PDF als Anhang, Text als kurze HTML-Zusammenfassung mit Firmenname/Farbe aus dem Branding. Ist kein SMTP-Server eingetragen, wird die Lieferung als fehlgeschlagen markiert. Fehlgeschlagene Lieferungen lassen sich unter History erneut senden („Erneut senden", schickt das vorhandene PDF mit kurzem Text) oder neu erzeugen („Wiederholen", mit Branding, Ausschnitt und Zeitzone des Zeitplans). Manuelles Erzeugen, Erneut senden und Wiederholen stehen mit den Empfängern im Audit-Log.
Berechtigung¶
| Permission | Wirkung |
|---|---|
reports.view |
Zeitpläne und History sehen, PDFs herunterladen |
reports.export |
Zeitpläne anlegen und bearbeiten, generieren, Logo hochladen, erneut senden, wiederholen |
reports.delete |
einen Zeitplan löschen |
Die Knöpfe „Neuer Schedule" und „Jetzt generieren" zeigt die Oberfläche nur Admins.
Anschluss¶
- SLA-Reports — Verfügbarkeit interaktiv und als CSV
- Audit-Log — eigener Bereich, nicht Teil der PDF-Reports