Skip to content

Operations

Monitor setup

Production scheduled scans require Postgres persistence, Redis, and a dedicated worker with the scheduler enabled.

1. Environment

DATABASE_URL=postgresql://...
REDIS_URL=redis://...
QTANGL_ENABLE_SCHEDULER=true
QTANGL_INLINE_JOBS=false
QTANGL_SCHEDULER_INTERVAL_SEC=60

2. Worker process

Run python -m app.worker on Railway or your orchestrator. The worker enqueues due schedules and processes the PQC scan queue.

3. Health checks

GET /health/ready returns database, Redis, and scheduler metrics (last tick, enqueued count). Use this for uptime monitors.

4. SIEM / webhook v2

Payload schema qtangl-webhook-v2. Sample: webhook-v2-scan-complete.json. Optional HMAC headers X-Qtangl-Signature when signing secret is set in Dashboard alert settings. Full field dictionary: SIEM webhook v2 docs.

5. Dashboard

Configure schedules, alert thresholds, and webhook signing in Dashboard. Failed webhook deliveries appear in the DLQ with one-click replay.

See also Monitor product page and schedule API guide.