local7.log não era legível por munin
Estou usando nginx-plus (a versão que você tem que pagar) e gostaria de monitorar o acesso por vhost.
Quando usei a versão gratuita do nginx, consegui monitorar facilmente os acessos com os projetos plug-in munin:
Eumigreiparaonginxplusenãotenhodados.Quandoeulogarcomonetcatparaonómunin:
$nclocalhost4949#muninnodeatservername.comfetchbyprojects_accesscontrolcenter.value0static.value0ccapi.value0tracking.value0reco.value0
Aprincipaldiferençaéqueestoulogandoviasyslogquandoeuestavalogandonoarquivo.Cadavhostregistracomumatag,aquiatagnginxreco
:
access_logsyslog:server=localhost,facility=local7,tag=nginxreco,severity=info;
Ondeeutinhaoseguintelogparaconfiguraçãodearquivosobnginxlivre:
access_log/var/log/nginx/reco-access.log;
Portanto,paraoreco
vhost,porexemplo,tivedeadaptar
'reco' => [
{'path' => '/var/log/nginx/reco-access.log'}
],
para
'reco' => [
{'path' => '/var/log/local7.log', 'regex' => 'nginxreco'}
],
Como eu uso o syslog, o formato de log mudou um pouco: ele adiciona uma data, um nome de host e uma tag (que é a maneira syslog de logar)
Formato antigo (do arquivo direto):
xx.xx.xx.xx - - [18/Mar/2014:06:25:20 +0100] "GET /HTTP/1.1" 200 52 "-" "Python-urllib/2.7"
Novo formato (do syslog):
Mar 18 06:25:20 myhostname nginxreco: xx.xx.xx.xx - - [18/Mar/2014:06:25:20 +0100] "GET /HTTP/1.1" 200 52 "-" "Python-urllib/2.7"
O que estou fazendo de errado?