Passo-a-passo detalhado do skill, referenciando as fases cognitivas:
1SENSE — Coletar e estruturar logs
```bash
# Loki (LogQL)
logcli query '{service="my-app"} |= "error"' --since=1h --output=jsonl > logs.jsonl
# Elasticsearch (KQL)
curl -X GET "es:9200/logs-*/_search" -H 'Content-Type: application/json' \
-d '{"query": {"bool": {"filter": [{"range": {"@timestamp": {"gte": "now-1h"}}}]}}}'
```
2CONTEXTUALIZE — Calcular baseline e mapear topologia
Calcular taxa normal de erros nas últimas 24h vs. últimas 1h
Identificar serviços no trace pela propagação de trace_id e span_id
3HYPOTHESIZE — Detectar anomalias
```python
import pandas as pd
df = pd.read_json("logs.jsonl", lines=True)
df["timestamp"] = pd.to_datetime(df["timestamp"])
# Identificar spike de erros
error_rate = df[df["level"] == "error"].resample("1min", on="timestamp").size()
anomalies = error_rate[error_rate > error_rate.mean() + 3 * error_rate.std()]
# Correlacionar por trace_id
failed_traces = df[df["level"] == "error"]["trace_id"].unique()
incident_chain = df[df["trace_id"].isin(failed_traces)].sort_values("timestamp")
```
4EVALUATE — Construir timeline de incidente
Identificar o primeiro evento de erro (root cause)
Traçar cascata de falhas downstream
Calcular impacto: requests afetadas, usuários, receita (se métricas disponíveis)
5RECOMMEND — Gerar RCA e sugestões
```
Root Cause Analysis
**Horário**: 14:32:15 UTC - 14:45:30 UTC (13 min)
**Serviço afetado**: payment-service
**Root cause**: Timeout na conexão com o banco de dados (pool exhaustion)
**Impacto**: 2.847 requests com erro 503, ~R$ 142k em transações não processadas
**Timeline**:
14:32:15 - Primeira falha de conexão ao BD
14:32:45 - Pool exhaustion detectado
14:35:00 - Cascata para order-service (dependente)
**Ação imediata**: Aumentar pool_size de 10 para 25, adicionar circuit breaker
```
6REFLECT — Documentar e prevenir
Criar alerta: `rate(db_connection_errors[5m]) > 0.1` → PagerDuty
Adicionar ao runbook: link para essa análise com queries reprodutíveis
Reportar telemetria via mcp-skillschain