Capability

Scheduled Report Delivery

TR7 delivers scheduled PDF / XLSX reports per vService through named report profiles, with branded covers, multi-recipient routing and cluster-aware single-send — no separate management VM required.

TR7 Scheduled Report Delivery ships both L7 traffic reports and WAAP attack reports on a periodic schedule from the same engine. Operators define named report profiles per vService; each profile owns its dimension set, chart selection, row cap and recipient list. Five frequency presets are built in: **hourly** (every hour + 5 min), **daily** (01:30), **weekly** (Monday 03:30), **monthly** (1st of month 05:30), **annual**. The same profile can be assigned to multiple frequencies; one profile can deliver a weekly summary PDF and a monthly full XLSX to different recipient sets. Email delivery validates addresses against a pattern; each profile can carry multiple recipients and multiple file types (PDF / XLSX). Every vService can hold one primary report profile and any number of additional profiles — monthly executive summary, weekly operations detail, and daily full-coverage audit can all run in parallel. In a high-availability cluster, the same scheduled report is generated and sent once, from the active node only. No duplicate delivery, no duplicate PDF generation — cluster-aware single-send is the engine's default behaviour. The ad-hoc report form and the scheduled report profile share the same parameter set: format (HTML / XLSX / PDF), date range (h / d / w / M / y units), dimension set, frontend and backend chart selection, row cap, language preference, target email. Operators learn one model; a satisfactory ad-hoc output becomes a profile and starts running on cron as-is. The result: TR7 folds reporting operations into the vService configuration itself — scheduling is not a separate system but a profile set owned by the operator who owns the vService.

5
Frequency presets — hourly, daily, weekly, monthly, annual
Multi
Recipient, format and frequency — per profile
vService ×
Unlimited profiles — primary + extra list

The reports are generated — but who gets them, when, in what format?

Most reporting infrastructures look like this: the ADC or WAAP product generates periodic PDFs, drops them into a file share, and a weekly cron or manual step emails them to the right stakeholders. There are multiple manual links in the chain; if any one breaks, the missing stakeholder may be out of the loop for weeks.

Beyond that, different stakeholders inside the same organization need the same vService's report at different depths. The board wants a two-page monthly summary; operations want a weekly full view; internal audit wants a daily full XLSX. A single report profile can't serve all three — but most products only allow one profile per vService.

High-availability clusters introduce another trap: if the same scheduled report is generated from multiple nodes, the stakeholder either gets two copies of the same PDF or the operator writes coordination scripts. Cluster-aware single-send semantics are usually outside the software and on the operator's shoulders.

Format and language preference are problems too. In service-provider scenarios, each customer should receive a report in their own language, with their own logo. Common products may not allow per-profile language preference; a single global setting governs every report.

TR7 Scheduled Report Delivery solves all four in one product: multi-frequency + multi-recipient + multi-format per profile, unlimited profiles per vService, cluster-aware single-send, per-profile language preference.

Our approach

TR7 designs report scheduling as a natural part of the vService configuration — no separate scheduling service, no separate UI, the profile lives under the vService.

Five frequency presets and ad-hoc share the same engine

Hourly, daily, weekly, monthly and annual presets are bound to fixed cron expressions. The ad-hoc form and the scheduled profile share the same parameter set — the operator fills the form once, saves as a profile, chooses a frequency, and delivery starts.

Multi-recipient, multi-format, multi-frequency per profile

Each report profile can be assigned to multiple email recipients, multiple file types (PDF, XLSX) and multiple frequencies. One profile can deliver a weekly PDF summary and a monthly full XLSX to different stakeholder sets in parallel.

Unlimited report profiles per vService

A vService can carry one primary profile and any number of additional profiles. Monthly executive summary, weekly operations detail, daily full-coverage audit PDF — all under the same vService, from the same data source.

Cluster-aware single-send — no duplication

In a high-availability cluster, the same scheduled report is generated and sent only by the active node. Operators don't need to write coordination scripts to prevent double delivery; the engine knows the cluster topology.

Capabilities

The scheduling surface — profile definition, frequency selection, recipient management, file type and language preference — runs on a shared ad-hoc + cron engine.

5 frequency presets — hourly, daily, weekly, monthly, annual

Hourly: each hour + 5 minutes. Daily: 01:30. Weekly: Monday 03:30. Monthly: 1st of month 05:30. Annual: turn of the year. A single profile can be assigned to multiple frequencies; the same dimension set can ship to different recipient sets on different schedules.

Named report profiles

Profiles are defined by name under each vService ("Executive Monthly", "SRE Weekly", "Internal Audit Daily"). Profile names appear in the operator console, in email subjects and in audit logs — making it traceable who received what report under which profile.

Multi-recipient email, validated address pattern

Each profile can ship to multiple email addresses. Addresses are validated against the email pattern on save; invalid addresses are rejected. The ad-hoc report form also accepts a one-off recipient.

Multiple file types (PDF + XLSX)

The same scheduled report can render as both PDF and XLSX and attach to the same email. Stakeholders get two views of the same data — PDF for reading, XLSX for detail querying.

Per-profile language preference

Every report profile specifies its own language. In service-provider scenarios each customer receives the report in their own language; the same engine produces parallel reports in different languages for tens of customers. Cover-page titles and section labels localize to the profile's language.

Cluster-aware single-send

In a high-availability cluster, a given scheduled report is generated and sent only once, from the active node. Operators don't write coordination scripts, stakeholders don't get duplicate PDFs, and inter-node races don't happen. The engine knows the cluster topology and behaves accordingly.

Primary + extra profile hierarchy

Every vService can carry one primary report profile and any number of extra profiles. The primary profile lives in the vService config; extras are managed in a separate list. Different stakeholders receive different report depths under the same vService.

Shared parameter set with the ad-hoc form

The operator-console ad-hoc report form (format, range, dimensions, chart selection, row cap, language, target email) shares the parameter set 1:1 with the scheduled profile. A satisfactory ad-hoc output becomes a profile and starts running on cron.

Operational depth

The scheduling engine is designed alongside cron expressions, file lifecycle, email delivery, cluster behaviour and audit logs.

01

Cron preset table

Hourly 5 * * * *, daily 30 1 * * *, weekly 30 3 * * 1, monthly 30 5 1 * *. The same scheduled-report slots are positioned to avoid overlap with other periodic jobs; hourly reporting doesn't land at any single traffic peak.

02

Email delivery via SMTP with nodemailer

PDF / XLSX attachments are delivered as standard SMTP email; the subject line is configurable. The engine works through corporate email servers (Exchange, Postfix, supervised cloud providers). Webhook, S3 upload and SFTP delivery are not in the current release.

03

Temporary file lifecycle

Generated report files are written under /tmp with timestamped names, used as email attachments, and removed by the OS lifecycle. Long-term archive requires manually forwarding the profile output to a shared store, or configuring SIEM forwarding.

04

Cluster-aware coordination

Only the cluster's active node performs periodic delivery; standby nodes do not execute the same cron. On failover, the new active node assumes delivery from the next period onward.

05

L7 traffic and WAAP attack reports share the same engine

Both L7 traffic reports and WAAP attack reports run on the same scheduling engine. Operators don't manage two scheduling services; profile definitions, frequency presets and recipient management are identical for both surfaces.

06

Profile changes take effect on the next cycle

When a profile is updated, the changes apply on the next cron trigger; running generations are unaffected. When a profile is deleted, future triggers are cancelled while historical delivery records are preserved.

Where it fits

Monthly executive PDF summary

Banks and conglomerates ship a monthly executive PDF per vService to the board — cover page with corporate logo, 2-3 pages of total traffic, geographic intensity, error rate and backend health. The profile assigns to monthly frequency with multiple recipients in parallel.

Weekly detail XLSX for SRE

SRE teams receive a weekly full-breakdown XLSX for the same vService — one tab per section, ready for detail analysis. "Executive Monthly" and "SRE Weekly" profiles run in parallel under the same vService.

Daily full-coverage internal audit

Internal audit receives daily full-coverage reports — PDF and XLSX together. Daily PCI DSS dossier entries accumulate automatically; the auditor's archive is single-source at month end.

Service provider tenant reporting automation

MSPs define a per-tenant report profile under each vService; each customer receives a monthly report in their own language, with their own logo, to their own email list. No manual step; onboarding a new tenant is a new vService + profile away.

Frequently asked

Which frequencies are supported?
Five presets: hourly (5th minute of each hour), daily (01:30), weekly (Monday 03:30), monthly (1st of month 05:30) and annual. A single profile can be assigned to multiple frequencies.
Can a profile have multiple recipients?
Yes. Each profile can be assigned to multiple email addresses, multiple file types (PDF + XLSX) and multiple frequencies. Addresses are validated on save.
Can the same vService have multiple profiles?
Yes. Each vService can carry one primary report profile and any number of additional profiles. Monthly executive summary, weekly operations detail and daily full-coverage audit can run in parallel — all from the same data source.
In a cluster, can the same report be sent twice?
No. In a high-availability cluster the same scheduled report is generated and sent only once, from the active node. The engine knows the cluster topology; on failover the new active node assumes delivery from the next period onward.
Are L7 traffic reports and WAAP attack reports scheduled by separate services?
No — the same engine delivers both. Operators learn one model; profile definitions, frequency presets and recipient management are identical for both report types.
Can I set language per profile?
Yes. Each report profile specifies its own language. In service-provider scenarios different tenants receive reports in different languages in parallel; the same engine produces parallel reports across tens of tenants.
Are webhook or S3 / SFTP delivery supported?
In the current release the delivery channel is SMTP email. Webhook push, S3 upload and SFTP delivery are not in standard scope; they can be assessed on the roadmap based on demand.

Fold report delivery into the vService — not a separate system

5 frequency presets, multi-recipient, multi-format, cluster-aware single-send, per-profile language preference. Let us walk you through a live demo on your own vService.