PDF reports¶
Preview feature
PDF reports are off by default — menu entry, page and API are locked until a super admin enables the area under Admin → System → Preview features. The area is not stable yet.
Status reports as PDF — auto-generated and emailed on a schedule, or generated on demand.
PDF reports are part of the licensed reports feature (/reports → PDF tab, next to the SLA reports tab).
Report types¶
Three built-in templates:
| Type | Content |
|---|---|
executive |
management-friendly short form: current state, trend |
technical |
detailed, including performance data |
sla |
availability per service, incidents, downtimes |
There's currently no dedicated audit-report type, and no way to upload your own HTML templates — the three types are fixed in the product.
Scheduled reports¶
/reports → PDF → New:
| Field | Meaning |
|---|---|
| Name | "Acme SLA April" |
| Report type | executive / technical / sla |
| Scope | hosts and/or tags |
| Cron expression | standard cron syntax |
| Timezone | prefilled with the instance timezone (Admin → Notifications → Email & messages), UTC if none is set |
| Recipients | To/CC/BCC lists |
| Cover text | optional intro text |
| Branding | logo, company name, primary color, footer text |
| Enabled | turn the schedule on/off |
Example:
name: "Acme Monthly SLA"
report_type: sla
cron_expression: "0 6 1 * *" # first day of month at 06:00
scope:
tags: ["customer-acme"]
recipients:
to: ["acme-ops@example.com"]
cc: ["acme-management@example.com"]
timezone: "Europe/Rome"
Manual generation¶
/reports → PDF → Preview or Generate: same parameters, immediate run. The PDF is downloadable and optionally emailed.
Render pipeline¶
flowchart LR
SCHED[Scheduler] --> DATA[Fetch data]
DATA --> HTML[Render HTML — Jinja2]
HTML --> PDF[PDF via WeasyPrint]
PDF --> STORE[Storage]
PDF --> MAIL[Email with attachment]
WeasyPrint needs no headless browser engine — a pure Python library on Pango/Cairo.
Logo upload¶
You can upload your own logo per report schedule (PNG/JPG/SVG, max 2 MB).
Storage¶
Generated PDFs land in the reports data directory of the container and are kept for 90 days, then cleaned up automatically. Browse and download via /reports.
Email distribution¶
The PDF is attached, the body is a short HTML summary with the company name/color from the branding. Failed deliveries can be individually resent or retried (/reports → history).
Permission¶
| Permission | Effect |
|---|---|
reports.view |
view, create, schedule, generate, preview, and upload logos for reports, resend deliveries |
reports.delete |
delete a schedule |
There's no separate permission for "scheduling only" or "upload custom templates" — the latter either doesn't exist (custom templates), or is already covered by reports.view.
Next¶
- SLA reports — the numbers behind the
slareport type - Audit log — its own area, independent of PDF reports