Back to docs
Operations

Runbooks

Operational playbooks for the top Dagy failure modes. Each runbook follows the same shape: **Symptoms → Diagnosis → Remediation → Escalation**.

Conventions

  • Environment suffix. Every AWS resource name is env-suffixed by the CDK NameFactory (infrastructure/dagy_stack.py). Examples below use the develop environment (e.g. dagy-api-develop). Substitute your environment (develop, staging, production) for <env> everywhere.
  • Lambda alias. All Lambdas are invoked through the live-<env> alias, not $LATEST. When you target a function by ARN, use the alias qualifier.
  • Region. Commands assume AWS_REGION is set (e.g. us-east-1). Bucket names embed a compacted region, e.g. dagy-artifacts-<account>-useast1-<env>.

Resource name quick reference (<env> = your environment)

ComponentName pattern
Control-plane API Lambdadagy-api-<env> (alias live-<env>)
Scheduler Lambdadagy-scheduler-<env>
Flow-executor Lambdadagy-flow-executor-<env>
Executor Lambdadagy-executor-<env>
DAG launcher Lambdadagy-dag-launcher-<env>
ECS reconciler Lambdadagy-ecs-reconciler-<env>
API log group/aws/lambda/dagy-api-<env>
Scheduler log group/aws/lambda/dagy-scheduler-<env>
API Gateway access logs/aws/apigateway/dagy-api-gateway-<env>
ECS worker log group/ecs/dagy-worker-<env>
Events queuedagy-events-queue-<env>
Events DLQdagy-events-dlq-<env>
DLQ-depth alarmdagy-events-dlq-depth-<env>
ECS clusterdagy-ecs-cluster-<env>
ECR worker repodagy-worker-<env>
Scheduler EventBridge ruledagy-scheduler-tick-<env> (rate(1 minute))
Reconciler EventBridge ruledagy-ecs-reconciler-tick-<env> (rate(5 minutes))
Artifacts bucketdagy-artifacts-<account>-<region>-<env>
Attachments bucketdagy-attachments-<account>-<region>-<env>
Traces bucketdagy-traces-<account>-<region>-<env>
Backup vault (staging/prod)dagy-backup-vault-<env>
Backup plan (staging/prod)dagy-backup-plan-<env>
Backup export bucket (staging/prod)dagy-backup-export-<account>-<region>-<env>
Secrets Manager prefixdagy/*
Metrics namespacesDagy/Runs, Dagy/AI, Dagy/ECS

Runbook index

#IncidentRunbook
1Control-plane API outage / 5xxrunbooks/api-outage.md
2DynamoDB throttlingrunbooks/dynamodb-throttling.md
3Lambda error spikerunbooks/lambda-error-spike.md
4SQS DLQ backlogrunbooks/sqs-dlq-backlog.md
5ECS worker failuresrunbooks/ecs-worker-failures.md
6Scheduler stallrunbooks/scheduler-stall.md
7Billing / credit incidentrunbooks/billing-credit-incident.md
8Secrets-key rotationrunbooks/secrets-key-rotation.md
9Disaster recovery (data loss / region loss)runbooks/disaster-recovery.md
10DynamoDB restore (PITR / backup / export)runbooks/dynamodb-restore.md

See also:

On-call escalation ladder

  1. L1 — On-call engineer. Owns triage using these runbooks (first 15 min).
  2. L2 — Service owner (platform team). Paged if an SLO is breaching its error budget or an incident exceeds 30 minutes.
  3. L3 — Engineering lead. Paged for data-loss risk, security incidents, or a Sev-1 (full API outage) exceeding 60 minutes.

Open a customer-facing status update once a Sev-1/Sev-2 is confirmed.