Bem, esse animal não existia, então conjurei .
Você encontrará o código mais recente em a essência . Aproveite.
Estou começando a usar o Munin para monitorar um servidor Nginx em produção. Uma coisa que estou particularmente interessado em representar graficamente é a taxa de erros - respostas HTTP com códigos no intervalo de 50x. Eu estou querendo saber se:
Bem, esse animal não existia, então conjurei .
Você encontrará o código mais recente em a essência . Aproveite.
Não tenho conhecimento de nenhuma solução OSS pronta para uso. Eu escrevi pessoalmente esse tipo de plugin, mas não posso compartilhar o código. São duas etapas:
tail -f
). Como você pode definir o formato de log do Nginx, você está livre para registrar os valores desejados, por exemplo, código de status, tempo de solicitação do upstream, etc. Você terá que compartilhar o estado entre essas duas partes. Há um punhado de opções: na memória (minha implementação do analisador de log foi um daemon orientado a eventos armazenando todas as estatísticas na memória); MongoDB; Redis; tradicionalmente MySQL; memoria compartilhada; etc.
Então este link é para os plug-ins nginx no repositório munin. Não é possível encontrar nada óbvio para fazer o que você quer, ou qualquer coisa na web depois de uma pesquisa (muito breve).
Eu escrevi um par de plugins munin e eles não são tão difíceis. Você deve ser capaz de escrever um para conseguir o que deseja. Eu apenas contaria o número de erros de 50x no log atual e retornaria como um tipo DERIVE com um mínimo de 0. Dessa forma, você pode retornar um único valor e deixar o rrdtool funcionar se tiver aumentado. Observação - isso será um problema se no final de um dia você disser 130 erros de 50x, e o log for girado e você receber 131 erros imediatamente, o gráfico considerará que é um valor de 1.
A outra opção seria rastrear a contagem contra o nome do arquivo de log e retornar o aumento real e redefini-lo quando o log for rotacionado.
Tags monitoring nginx munin