O Que É uma Metric? Medições de Séries Temporais Explicadas
Uma metric é uma medição numérica de alguma propriedade de um sistema, capturada repetidamente ao longo do tempo para que você veja como ela evolui, dispara ou degrada.
Metrics são o mais barato e mais escalável dos sinais de observabilidade. Uma metric reduz um fluxo de eventos a um número que você pode armazenar de forma densa e consultar rápido, que é exatamente o que dashboards e alertas precisam. A contrapartida é que uma metric perde o detalhe de qualquer evento individual.
O que é uma metric
Uma metric é um nome, um valor, um timestamp e geralmente um conjunto de labels que lhe dão dimensões. Armazenada como uma série temporal, ela responde a perguntas como "como a latência de requisições se moveu na última hora" sem varrer eventos brutos. Como as metrics são pré-agregadas, elas continuam baratas de manter mesmo em alto volume.
Tipos comuns de metric
- Counter: um valor que só sobe, como o total de requisições atendidas.
- Gauge: um valor que sobe e desce, como o uso atual de memória.
- Histogram: uma distribuição de valores agrupados em faixas, como durações de requisições.
Metrics vs logs
Uma metric diz que a latência subiu; um log conta sobre uma requisição lenta específica. Metrics são agregadas e sem dimensão sobre eventos individuais, o que as torna ideais para tendências e alertas, mas inúteis para explicar uma transação anômala. Os dois sinais respondem a perguntas diferentes e são mais fortes juntos.
Cardinalidade
Cada combinação única de nome de metric e valores de label é uma série temporal separada. Adicionar um label de alta variedade, como um user ID, multiplica a contagem de séries e pode sobrecarregar um sistema de metrics. Manter labels de baixa cardinalidade é a disciplina mais importante no design de metrics.
Metrics no CI/CD
Metrics úteis de pipeline incluem duração de build, taxa de sucesso, tempo de fila e contagem de testes. Como gauges e counters ao longo do tempo, elas revelam se seu pipeline está ficando mais lento ou mais flaky de release em release, e alimentam checks pós-deploy que comparam metrics da aplicação antes e depois de uma mudança.
Principais conclusões
- Uma metric é uma medição numérica acompanhada ao longo do tempo, frequentemente com labels.
- Os tipos principais são counters, gauges e histograms.
- Metrics mostram tendências; logs explicam eventos individuais.
- Metrics de pipeline como duração e taxa de sucesso revelam a saúde do CI ao longo do tempo.