Home > Blog > Desenvolvimento Web
Desenvolvimento Web
JavaScript
Programação

SLI e SLO no Node.js: meça confiabilidade

Atualizado em: 19 de outubro de 2026

Terminal Linux usado em desenvolvimento e administração de aplicações Node.js

SLI e SLO no Node.js transformam confiabilidade em objetivos mensuráveis. SLI é o indicador observado, como proporção de respostas válidas ou latência abaixo de um limite. SLO é a meta definida para esse indicador durante uma janela.

Em vez de buscar “100% disponível”, a equipe escolhe quais experiências importam e quanto de falha é aceitável.

SLI de disponibilidade

SLI = requisições boas / requisições válidas

Defina claramente o que é bom. Respostas 2xx podem contar como sucesso, enquanto 5xx representam falha do serviço. Alguns 4xx são responsabilidade do cliente e podem ser excluídos.

SLI de latência

Um exemplo: proporção de requisições concluídas em até 300 ms. Essa abordagem é mais útil que apenas acompanhar média.

SLO

Um SLO pode afirmar: “99,9% das requisições válidas devem ser bem-sucedidas em 30 dias” ou “99% devem concluir em até 300 ms”.

Métricas com Prometheus

sum(rate(http_requests_total{status_class!="5xx"}[30d]))
/
sum(rate(http_requests_total[30d]))

Adapte a consulta à semântica real. Consulte Prometheus no Node.js.

Histograma de latência

sum(rate(http_request_duration_seconds_bucket{le="0.3"}[30d]))
/
sum(rate(http_request_duration_seconds_count[30d]))

Janela de medição

Janelas móveis de 28 ou 30 dias evitam reinícios artificiais no começo do mês. Escolha uma janela coerente com o ciclo de produto e resposta operacional.

SLIs por jornada

Uma rota isolada pode estar saudável enquanto a jornada de compra falha. Quando possível, defina indicadores para operações que o usuário realmente tenta concluir.

Dependências

O SLO do serviço deve refletir o resultado entregue, mesmo quando a causa está em uma dependência. Métricas internas ajudam a diagnosticar, mas não devem ocultar impacto.

Indicadores úteis

  • disponibilidade;
  • latência;
  • freshness de dados;
  • durabilidade;
  • correção do resultado;
  • tempo de processamento de fila.

Não misture classes diferentes

Rotas interativas, jobs assíncronos e exportações possuem expectativas distintas. Defina SLOs separados em vez de uma média geral sem significado.

Alertas por burn rate

Alertas baseados na velocidade de consumo do error budget detectam degradações relevantes. Uma taxa alta em janela curta exige resposta rápida; uma taxa moderada em janela longa indica problema persistente.

Instrumentação no Node.js

Registre rota normalizada, status, duração e resultado de negócio. Para filas, meça idade da mensagem e conclusão, não apenas se o consumidor está vivo.

Revisão periódica

SLO não é promessa imutável. Revise quando o produto muda, mas não reduza a meta apenas para esconder degradação. Relacione objetivos a decisões de capacidade e arquitetura.

Erros comuns

  • usar média de latência;
  • contar qualquer 4xx como falha do serviço;
  • definir SLO sem dados;
  • criar dezenas de indicadores sem ação;
  • medir apenas infraestrutura;
  • alertar em cada violação momentânea;
  • não associar SLO ao produto.

Conclusão

SLI e SLO no Node.js oferecem uma linguagem objetiva para confiabilidade. Escolha poucas jornadas críticas, defina o que conta como sucesso e acompanhe a proporção ao longo de uma janela.

Use métricas de baixa cardinalidade e alertas de burn rate. Consulte a documentação de SLO do Google SRE e a documentação de histogramas do Prometheus.

10 melhores cursos de programação em 2026

Descubra os melhores cursos de programação. Aprenda a escolher o curso ideal para iniciar ou avançar na carreira de desenvolvedor

POSTS RELACIONADOS

Ver todos

Seta para a direita