SLOs e Error Budget

Defina metas de confiabilidade, acompanhe error budget em tempo real e integre rollback automático com o Aegies AI.

O que é um SLO

Um SLO (Service Level Objective) é uma meta mensurável de confiabilidade para um serviço. Ele define:

  1. Indicador (SLI): o que medir (latência, disponibilidade, taxa de erro)
  2. Meta: qual porcentagem de requisições deve ser “boa”
  3. Janela: em qual período avaliar (7, 14 ou 30 dias)

Exemplo:

“99,9% das requisições para /api/checkout devem responder em menos de 500ms nos últimos 30 dias.”


Criando um SLO

Na UI

Em SLOs → + New SLO, preencha:

  • Nome: Checkout latency
  • Tipo de SLI: Latência | Disponibilidade | Error Rate | Customizado
  • Serviço e endpoint: payments-api / POST /api/checkout
  • Meta: 99.9%
  • Janela: 30 dias

Via API

curl -X POST https://api.dodoaegies.com/v1/slos \
  -H "Authorization: Bearer $DODO_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Checkout latency",
    "service": "payments-api",
    "indicator": {
      "type": "latency",
      "endpoint": "POST /api/checkout",
      "threshold_ms": 500
    },
    "target": 99.9,
    "window_days": 30
  }'

Error Budget

Com um SLO de 99,9% em 30 dias, o error budget é 0,1% do tempo total:

30 dias × 24h × 60min = 43.200 minutos
0,1% × 43.200 = 43,2 minutos de budget disponível

O Aegies exibe o error budget restante em tempo real:

StatusSignificado
Verde (> 50% restante)Confortável — pode fazer deploys com segurança
Amarelo (10–50% restante)Atenção — limite deploys de risco
Vermelho (< 10% restante)Crítico — foque em confiabilidade
Esgotado (0%)SLO violado — freeze de features recomendado

Multi-burn-rate alerts

Alertas de burn rate simples (“error budget < 10%”) detectam problemas tarde demais. O Aegies usa multi-burn-rate para alertar cedo:

Janela curtaJanela longaBurn rateSeveridadeAção
1h5h14×CríticoPage imediato
6h24h6×AltoTicket urgente
24h72h3×MédioReview na sprint
72h168h1×BaixoBacklog

Isso garante que um incidente de 5 minutos que consumiu 2 horas de budget seja detectado em minutos, não no final do mês.


Rollback automático com Aegies AI

Quando o Aegies aplica um fix e o SLO piora dentro da janela de observação (padrão: 5 minutos), o rollback é executado automaticamente:

Deploy v4.21.0 aplicado às 14:00
├── SLO "Checkout latency": 99.9% → 98.2% (burn rate 8×)
├── Aegies detecta regressão às 14:03
├── Proposta de rollback gerada: "Reverter para v4.20.1"
└── Rollback aprovado e executado às 14:04 (1-click na notificação)

Para habilitar rollback automático sem aprovação manual:

aegies.init({
  ai: {
    autoRollback: {
      enabled: true,
      sloThreshold: 0.5,   // rollback se o burn rate dobrar
      window_minutes: 5,
    },
  },
});

SLOs compostos

Para serviços críticos, você pode criar SLOs que combinam múltiplos indicadores:

{
  "name": "Checkout overall health",
  "type": "composite",
  "components": [
    { "slo_id": "checkout-latency", "weight": 0.5 },
    { "slo_id": "checkout-availability", "weight": 0.3 },
    { "slo_id": "checkout-error-rate", "weight": 0.2 }
  ],
  "target": 99.5,
  "window_days": 30
}

Dashboard de SLOs

O dashboard de SLOs mostra para cada serviço:

  • Compliance atual: porcentagem de requisições boas no período
  • Budget restante: em minutos absolutos e em porcentagem
  • Burn rate atual: velocidade de consumo nas últimas 1h, 6h e 24h
  • Histórico: últimos 12 meses de compliance

Próximos passos

  • APM — medir latência e disponibilidade
  • Motor de IA — como o Aegies usa SLOs para gerar e validar fixes
  • AI Runbooks — procedimentos de remediação quando o SLO está em risco