AI Runbooks

Como o Aegies gera, executa e personaliza runbooks automatizados para remediação de incidentes.

O que são AI Runbooks

Um runbook é um procedimento documentado para resolver um tipo específico de problema — um script de operações que antes ficava na cabeça ou no Notion de um engenheiro sênior.

O Aegies gera runbooks automaticamente com base no incidente detectado, usando o contexto completo da stack: traces, logs, métricas, deploys recentes e histórico de incidentes similares. Em vez de você escrever e manter runbooks manualmente, o Aegies os gera e executa — você só aprova.


Ciclo de vida de um runbook

1. Aegies detecta anomalia
      ↓
2. Correlaciona causa raiz (trace + log + deploy)
      ↓
3. Gera runbook com passos de remediação
      ↓
4. Exibe proposta no console com estimativa de risco
      ↓
5. Engenheiro aprova com 1 clique (ou auto-executa se pré-configurado)
      ↓
6. Aegies executa e monitora resultado via SLO
      ↓
7. Rollback automático se o SLO piorar

Tipos de runbook gerados

Banco de dados

ProblemaRunbook gerado
Query N+1 detectadaSugestão de índice + query refatorada como PR
Slow query acima do p95EXPLAIN ANALYZE automático + otimização de índice
Conexões esgotadasAjuste de max_connections + instrução de pool
Tabela sem índice em coluna de filtroCREATE INDEX CONCURRENTLY sem lock

Aplicação

ProblemaRunbook gerado
Memory leak detectadoIdentificação do objeto + patch de GC ou fix de referência
CPU spike em função específicaProfiling automático + sugestão de otimização
Exception nova recorrenteStack trace + localização no código + PR de fix
Timeout em chamada externaCircuit breaker + retry com backoff exponencial

Infraestrutura

ProblemaRunbook gerado
Pod com OOMKilled repetidoAjuste de resources.limits.memory no Deployment
HPA não consegue escalarDiagnóstico de limites de nó + configuração corrigida
Certificado próximo do vencimentoRenovação automática via cert-manager
Disco chegando ao limiteIdentificação de arquivos grandes + limpeza ou resize

Executando um runbook

Via notificação (Slack / Teams)

Quando o Aegies detecta um incidente, você recebe uma mensagem com:

🚨 Aegies detectou: Query lenta em payments-api
   Causa: Query SELECT sem índice na tabela orders (298ms avg)
   Runbook: Criar índice em orders.created_at
   Risco: Baixo — CREATE INDEX CONCURRENTLY (sem lock de tabela)
   Impacto estimado: redução de 78% no tempo de query

   [✅ Aprovar]  [👀 Ver detalhes]  [❌ Rejeitar]

Clicar em Aprovar executa o runbook imediatamente.

Via API

curl -X POST https://api.dodoaegies.com/v1/incidents/inc_abc123/approve \
  -H "Authorization: Bearer $DODO_KEY"

Via console

Em Incidents → [incidente] → Runbook → Execute, com log em tempo real da execução.


Runbooks customizados

Você pode definir runbooks próprios que o Aegies escolherá quando detectar o padrão correspondente:

# .dodo/runbooks/restart-worker.yaml
name: "Reiniciar worker travado"
trigger:
  service: background-worker
  pattern: "Worker heartbeat timeout"
  consecutive: 3

steps:
  - name: "Verificar estado dos pods"
    run: kubectl get pods -n production -l app=background-worker

  - name: "Coletar logs pré-restart"
    run: kubectl logs -n production -l app=background-worker --tail=200

  - name: "Reiniciar deployment"
    run: kubectl rollout restart deployment/background-worker -n production

  - name: "Aguardar pods saudáveis"
    wait:
      condition: deployment/background-worker rollout complete
      timeout: 120s

notify:
  on_success: ["#ops-alerts"]
  on_failure: ["#oncall"]

Auditoria completa

Todo runbook executado gera um registro de auditoria imutável com:

  • Quem aprovou (usuário ou “auto-approved” com política)
  • Quando foi aprovado e executado
  • O quê foi executado (comandos exatos)
  • Resultado (saída completa + status)
  • SLO antes e depois da execução

Disponível em Settings → Audit Log e exportável via API.


Próximos passos

  • AI Policies — configurar quais classes de problema o Aegies pode corrigir automaticamente
  • Motor de IA — como o Aegies detecta a causa raiz
  • SLOs — rollback automático quando o runbook não funciona