Skip to main content
Este cookbook mostra o fluxo completo de um incidente real na plataforma AIOps do ChatCLI — desde a detecção automática até o post-mortem com lições aprendidas.

Anatomia de um Incidente

Cenário: OOMKill em Produção

1. Detecção Automática

O Watcher detecta que pods do payment-service estão sendo OOMKilled:

2. Issue Criada

O CorrelationEngine agrupa as anomalias em um Issue:

3. Notificação Enviada

O Slack recebe automaticamente:
High Severity: OOM Kill Detected Issue: INC-20260319-001 | 2026-03-19T15:20:00Z

4. IA Analisa o Problema

5. Aprovação Necessária

O ApprovalPolicy requer aprovação para mudanças de recursos em produção:
Opção A — Aprovar via Web Dashboard: Acesse http://localhost:8090 → Approvals → Approve com motivo. Opção B — Aprovar via REST API:
Opção C — Aprovar via kubectl:

6. Remediação Executada

Após aprovação, o RemediationReconciler executa:
O controller faz:
  1. Captura ResourceSnapshot estruturado (replicas, images, CPU/memory requests+limits, HPA min/max)
  2. Cria ActionCheckpoint antes de cada ação
  3. Aplica AdjustResources (memory 512Mi → 1Gi)
  4. Aguarda 90s verificando deployment health
  5. readyReplicas >= desiredCompleted
Proteção automática: Se a ação falhar (ex: memory_limit inválido), o operator automaticamente restaura o recurso ao estado do snapshot (replicas, images, resources). O plano transiciona para RolledBack em vez de Failed. Se a verificação expirar (90s sem health), o rollback também é executado. O campo postFailureHealthy confirma se o recurso voltou ao normal. Isso garante que uma remediação nunca deixa o cluster em estado pior.

7. Issue Resolvida

  • Slack recebe notificação de resolução
  • Pattern Store registra: “oom_kill + Deployment + high → AdjustResources funciona”
  • Dedup cooldown de 10min ativado (configurável via aiops.resolutionCooldownMinutes)

8. PostMortem Automático

9. Revisar e Fechar

Operações do Dia a Dia

Monitorar via CLI

Monitorar via API

Runbooks Customizados

Métricas Importantes

Configure alertas no Prometheus/Grafana para estas métricas. Os dashboards pré-configurados em deploy/grafana/ já incluem painéis para todas elas.