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.