Voltar aos resultados

SLI, SLO e SLA

Service Level Indicator / Objective / Agreement

Métrica
Intermediário
Categoria: Observabilidade e operaçãoSubcategoria: Monitoramento

O que significa

SLI (indicador de nível de serviço) é a métrica medida: latência p95, disponibilidade, taxa de respostas fiéis. SLO (objetivo de nível de serviço) é a meta interna para o indicador: “p95 abaixo de 3 segundos em 99% do tempo”. SLA (acordo de nível de serviço) é o compromisso contratual, com consequências se violado, e sempre mais frouxo do que o SLO. Para IA, indicadores de qualidade (fidelidade, taxa de sucesso) entram ao lado dos técnicos. O error budget, derivado do SLO, é a “margem de erro” que o time pode gastar: dentro dela, experimenta; fora dela, estabiliza.

Como usar na prática de produto

Em Produto, vale escrever o SLO no PRD da capacidade. É o que traduz “funciona bem” em um número operável e evita discussões subjetivas no lançamento. O error budget dá ao time liberdade com responsabilidade: enquanto o orçamento de erro não foi consumido, pode lançar mudanças; quando foi, prioriza estabilidade. Por exemplo, SLO de 95% das respostas com fidelidade de pelo menos 0,9 na amostra semanal; se o error budget for consumido, mudanças de prompt são congeladas até a recuperação.

Quando usar este termo ou outro

Use SLI e SLO para toda capacidade em produção, como parte do contrato. Use SLA apenas quando há contrato com terceiro ou compromisso formal com outra área. Use error budget para decidir entre estabilizar e evoluir. Uma forma simples de diferenciar: SLI é o que se mede; SLO é a meta; SLA é a promessa com consequência.

Exemplos de aplicação

  • PRD: SLO de latência e de fidelidade definidos antes de construir.
  • Error budget: congelar mudanças quando o orçamento de erro acaba.
  • Qualidade: SLI de fidelidade ao lado de SLI de disponibilidade.
  • Fornecedores: comparar o SLA do fornecedor com o SLO do produto.
  • Comunicação: usar o SLO para alinhar expectativas com stakeholders.

Como calcular

Fórmulas: SLI de disponibilidade = requisições bem-sucedidas ÷ total, na janela de tempo. SLI de latência = fração das requisições abaixo do limiar (por exemplo, p95 abaixo de 3 s significa que 95% das requisições levam até 3 s). SLO = alvo para o SLI (por exemplo, 99,5% em 30 dias). Error budget = 1 − SLO. Para SLO de 99,5% em 30 dias, o budget é 0,5% do tempo, cerca de 3,6 horas de indisponibilidade tolerada. Budget consumido = indisponibilidade acumulada ÷ error budget. Passo a passo: 1. Escolha os SLIs que representam a experiência (técnicos e de qualidade). 2. Defina o SLO de cada um com base no que o usuário tolera. 3. Calcule o error budget do período. 4. Acompanhe o consumo do budget e defina o que acontece quando ele acaba. Exemplo: SLO: 95% das respostas com fidelidade de pelo menos 0,9 na amostra semanal. Se em uma semana apenas 91% atingem a meta, o budget foi ultrapassado e as mudanças de prompt são congeladas até a recuperação. Como interpretar: Budget consumido rápido indica instabilidade; budget nunca consumido pode indicar SLO frouxo demais ou time conservador demais.

Origem do termo

Google SRE (Beyer et al., 2016).

Fonte técnica

Google SRE Book, Service Level Objectives; Google SRE Workbook, Implementing SLOs

Termos relacionados