Runbook — Incidente no Worker de Exportação
Sinais de incidente
- Crescimento de mensagens na fila principal ou DLQ.
- Falha recorrente no processamento (
batchItemFailures). - Ausência de evento
export.completedem auditoria. - Alertas de erro no
worker-jobs.
Passo a passo (triagem)
-
Verificar saúde da fila:
- Profundidade da fila principal e DLQ.
- Taxa de mensagens recebidas × processadas.
-
Inspecionar logs do worker:
- Erros de parsing JSON.
- Falhas em
worker_export_link. trace.endcomoutcome=error.
-
Validar contrato de mensagem:
- Campos obrigatórios de
AsyncJobMessage. correlationIdpropagado em atributos.
- Campos obrigatórios de
-
Revisar comportamento de circuito/retry:
- Identificar se o circuito está aberto.
- Confirmar se retries foram tentados antes da falha final.
Mitigação imediata
| Cenário | Ação |
|---|---|
| Erro de payload | Corrigir produtor e reprocessar mensagens válidas |
| Erro transitório | Manter retries, monitorar cooldown do circuito |
| Fila saturada | Aumentar concurrency de consumo em janela controlada |
Recuperação
- Reprocessar mensagens da DLQ após correção da causa raiz.
- Validar retorno de
export.completedpara novos eventos. - Confirmar notificação proativa simulada e link seguro gerado.
Verificação pós-recuperação
npm run test -w @bi-agent/worker-jobs
npm run test:smoke
Logs devem ficar sem Failed processing SQS job recorrente por 30 minutos.