Como agregar novas linhas de logs do Apache de várias máquinas a cada hora?

2

Eu criei um sistema que precisa coletar novos logs do Apache de quatro máquinas a cada hora, mesclá-las, processá-las e armazená-las. Para a tarefa de coletar os novos logs eu escrevi um monte de cron script que lê a linha de linhas já enviadas e começar a enviar apenas as novas linhas, em seguida, armazene o novo número de linha. Isso é sincronizado com um script de mesclagem usando alguns arquivos .lock.

Embora isso funcione muito bem, gostaria de substituir este sistema por um sistema mais confiável, com bom tratamento de erros e, talvez, autodetectar novos arquivos de log (eles são rotacionados todos os dias). Existe algo que eu poderia usar para fazer esse tipo de tarefa? Obrigada!

    
por angaran 23.05.2012 / 09:45

4 respostas

3

Existem muitas soluções para coletar / monitorar logs.

Algumas delas: syslog, syslog-ng, logsurfer, splunk ... e eu acho muito mais. Mas eu recomendo o syslog-ng.

É muito configurável (por exemplo, ele pode armazenar logs em bancos de dados que às vezes são muito úteis), elásticos e fazer tudo o que você quiser.

Com o syslog-ng e o MongoDB, você pode fazer coisas divertidas usando a mojologia (Um aplicativo simples para procurar mensagens syslog armazenadas no MongoDB, como registradas pelo syslog-ng).

Você pode usar qualquer um desses softwares.

O Zabbix pode coletar logs, mas é muito mais difícil configurar o que você deseja.

O syslog não é uma má idéia, mas o sysylog-ng tem muito mais recursos. Aqui está a comparação entre o syslog e o syslog-ng link

Então eu escolheria syslog-ng :)

    
por 23.05.2012 / 10:04
2

Acho que será uma boa ideia usar o servidor syslog. Você pode enviar todos os seus registros para este servidor e processá-los depois disso. O Syslog também permite definir filtros e adicionar vários destinos para informações registradas.

    
por 23.05.2012 / 09:49
2

Não tenho certeza se o syslog é realmente a ferramenta certa para usar nos logs do apache.

Nos quatro servidores, basta girar os registros uma vez a cada hora.

Então, a partir de um servidor de log central, eu buscaria todos os logs usando o rsync e faria todo o material "inteligente" (mesclando logs etc.) em um local central.

    
por 23.05.2012 / 10:13
1

Há boas ferramentas para agregar logs do servidor web, escritos por Dmitry Koterov. É especialmente projetado para superar algumas falhas da solução syslog. Consulte o link

Outra boa maneira é usar software de gerenciamento de log, como splunk ou logstash.

    
por 23.05.2012 / 10:25

Tags