Skip to content

Monitoring & Alerting

Executive Overview — all summaries for decision-makers.

Status: Not yet configured (manual setup in external services)

PurposeToolCost
UptimeBetter Stack or UptimeRobotFree tier
ErrorsSentryFree tier
LogsRender Dashboardincluded
CronRender Cron Jobincluded

Uptime Checks

URLIntervalAlert
https://api.mqa.group/health1 minEmail + Slack
https://portal.mqa.group/login5 minEmail
https://api.mqa.group/api/auth/status5 minEmail

Header for auth/status: not required (public endpoint).

Render Alerts

Dashboard → Service → Notifications:

  • Deploy failed
  • Instance unhealthy
  • OOM / restart loop

Sentry Integration (TODO)

Backend

bash
npm install @sentry/node --save

Env: SENTRY_DSN (Render secret)

Frontend

bash
npm install @sentry/react --save

Env: VITE_SENTRY_DSN (DSN only, not a secret)

Log Retention

Render Free/Standard: limited retention. For audit:

  • Important security events already in DB (AuditLog)
  • Optional monthly export for compliance archive

On-Call (proposal)

SeverityResponse timeChannel
Portal down1hPhone + email
Degraded (slow)4hEmail
Security incidentimmediateLead Dev + MQA IT

Runbook: BACKUP-RESTORE-RUNBOOK

Metrics to Watch

Render Dashboard → Metrics:

  • CPU / memory backend
  • HTTP latency p95
  • Postgres connections

For AI features: Anthropic/OpenRouter usage dashboard separately.