Skip to content
Skip to content

Monitoring & Observability

Doku monitors your deployments automatically during rollout and provides ongoing visibility into application health, performance, and resource utilization.

Built-in Monitoring

During every deployment, Doku automatically tracks:

  • Error rate — Percentage of HTTP 5xx responses
  • Latency — P50, P95, and P99 response times
  • Throughput — Requests per second
  • Resource utilization — CPU and memory per instance
  • Health checks — Endpoint availability

Viewing Metrics

Check current metrics from the CLI:

bash
doku status --env production

# acme-web (production) — healthy
# URL:        https://acme-web.doku.io
# Version:    v42 (deploy_abc123)
# Instances:  4/20 (autoscale)
# CPU:        23% avg
# Memory:     312MB / 512MB avg
# Error rate: 0.01%
# P99 latency: 145ms
# Uptime:     14d 6h

Alert Thresholds

During canary rollouts, Doku uses the thresholds in your doku.yaml to decide whether to advance or roll back:

yaml
canary:
  error_threshold: 1%      # Roll back if error rate exceeds this
  latency_threshold: 500ms # Roll back if P99 latency exceeds this
Outside of deployments, Doku continues to monitor health checks and will alert you via configured notification channels if your application becomes unhealthy.

Notifications

Configure notifications in your doku.yaml:

yaml
notifications:
  slack: https://hooks.slack.com/services/T00/B00/xxx
  on: [deploy_start, deploy_success, deploy_failed, rollback]

External Integrations

Export metrics and logs to your existing observability stack:

Send metrics and logs to Datadog by setting your API key:

bash
doku env set DD_API_KEY=your-datadog-api-key --env production

Doku will automatically forward application metrics, deployment events, and container logs to Datadog.

Monitoring & Observability — Doku Docs — Doku