Configuração de métricas personalizadas#
O Angie pode coletar métricas numéricas personalizadas em memória compartilhada e expô-las através
da API de estatísticas em tempo real em
/status/http/metric_zones/. Isso é fornecido pelo módulo
HTTP Metric.
Nota
Este guia trata de métricas para tráfego HTTP. Para tráfego TCP e UDP,
consulte o módulo Stream Metric, que expõe suas zonas
em /status/stream/metric_zones/.
Módulos relacionados
Etapas de configuração#
Defina uma zona de métricas no bloco
http:metric_zone cria uma zona com um único modo de métrica.
metric_complex_zone cria uma zona com múltiplas métricas nomeadas.
Atualize as métricas no processamento de requisições com a diretiva metric. Use um par
chave=valor(ambos são valores complexos), e escolha o estágio de atualização comon=(request,response, ouend).Exponha a API com um
location:location /status/ { api /status/http/metric_zones/; }
Exemplo#
Conte requisições por host e exponha as métricas na API:
http {
metric_zone requests:128k count;
server {
listen 80;
location / {
metric requests $host=1;
}
location /status/ {
api /status/http/metric_zones/;
}
}
}
Observações#
Se
expire=onestiver definido na zona e a memória compartilhada estiver cheia, as entradas usadas menos recentemente são expiradas. Seexpire=off, novas atualizações são descartadas e o contadordiscardedaumenta.Se
discard_keyestiver definido, as métricas de entradas expiradas são agregadas sob essa chave na saída da API.Chaves e valores são limitados a 255 bytes; chaves mais longas são truncadas na API.
Um valor vazio é tratado como
0, e um valor não vazio sem um número inicial é tratado como1.