O Que É um SLI (Service Level Indicator)?
Um service level indicator (SLI) é uma métrica cuidadosamente escolhida que quantifica uma dimensão de quão bem um serviço está performando para seus usuários -- como a fração de requisições atendidas com sucesso.
Se um SLO é a meta, o SLI é a medição contra a qual você a compara. Um bom SLI captura a experiência do usuário em um único número, para que a equipe possa raciocinar sobre confiabilidade objetivamente em vez de discutir sobre anedotas.
O que faz um bom SLI
Um bom SLI é normalmente expresso como uma razão entre eventos bons e eventos totais, o que o faz naturalmente cair entre 0% e 100% e ser fácil de raciocinar. Ele deve se correlacionar com o modo como os usuários de fato percebem o serviço: quando o SLI cai, pessoas reais deveriam estar sentindo dor real.
Categorias comuns de SLI
- Disponibilidade: a fração de requisições válidas atendidas com sucesso.
- Latência: a fração de requisições atendidas mais rápido do que um limiar.
- Vazão: se o sistema lida com a carga oferecida.
- Correção ou qualidade: a fração de respostas que são precisas ou completas.
Meça no lugar certo
Onde você mede muda o que o SLI significa. Medir no load balancer captura o caminho voltado ao usuário; medir fundo dentro de um único serviço perde problemas nas camadas entre ele e o usuário. Quanto mais perto do usuário você mede, mais honesto é o indicador.
Agregue com cuidado
Médias escondem as piores experiências. SLIs de latência quase sempre usam percentis (como o 95º ou o 99º) em vez de médias, porque um punhado de requisições muito lentas pode arruinar a confiança mesmo quando a média parece boa. Escolher a agregação é parte de projetar o SLI.
Do SLI ao SLO
Uma vez que você tem um SLI confiável, definir um SLO é principalmente uma questão de escolher uma meta e uma janela. O trabalho difícil e valioso é escolher indicadores que genuinamente reflitam a satisfação do usuário, porque tudo a jusante -- objetivos, error budgets, alertas -- herda a qualidade deles.
Principais conclusões
- Um SLI é uma medida quantitativa de um aspecto da saúde do serviço.
- Os melhores SLIs acompanham o que os usuários de fato experimentam, frequentemente como uma razão entre eventos bons e totais.
- Meça perto do usuário e agregue com percentis, não com médias.