Estou tentando descobrir como outras pessoas implementam seus sistemas de gerenciamento de logs.
Eu tenho 20 a 30 servidores Linux e algumas caixas do Windows (a maioria delas virtualizadas). Utilizamos muitos scripts Perl e Bash para realizar a maioria de nossos trabalhos automatizados e estou tentando padronizar o log deles.
Eu estive olhando log4perl e log4sh para o log de scripts e syslog-ng para obter todos os logs em um servidor de log centralizado. Também li sobre o splunk, apesar de parecer que a edição corporativa é muito cara e eu posso ultrapassar o limite de licenças gratuitas com todos os meus servidores.
Eu já vi outras ferramentas, como swatch e logcheck, mas não tenho certeza de como todas essas peças se encaixam ... Todas as recomendações serão muito bem-vindas!
Respostas:
Eu tenho cerca de 30 servidores e apenas uso o syslog direto para enviar todos os logs para um único servidor de log. Para backup, todas as máquinas também são configuradas para armazenar seus próprios logs localmente por alguns dias, usando logrotate para cuidar da rotação e exclusão de logs antigos.
Cada um dos meus servidores de aplicativos executa um pequeno script perl para enviar seus logs para o syslog, que depois encaminha para o host de log (script perl abaixo).
Em seguida, no host de log, temos alguns scripts personalizados semelhantes à verificação de log que basicamente observam os logs recebidos quanto a qualquer coisa suspeita.
Também temos todo o email de todos os hosts indo para um local, para que, se algum programa reclamar dessa maneira, recebamos todas as mensagens. Teoricamente, isso poderia ir para uma única caixa de correio na qual um programa poderia atuar e analisar.
Aqui está o meu script perl de log. Ele funciona direcionando a saída do programa para ele e, em seguida, syslogs a saída e cospe de volta para que você possa enviá-la para outro lugar (envio para multilog). Você também pode dar a opção -q para acessar o syslog.
fonte
Embora ainda não o tenha implementado, estou planejando mover todas as minhas máquinas de geração de logs para o rsyslog e implementar um servidor do tipo bastião que funcionará como o coletor de syslogs. A partir daí, acho que a versão gratuita do Splunk pode fazer tudo o que preciso para extrair informações.
Agora apenas para implementá-lo ...
fonte
Eu uso um host syslog central. Cada sistema de borda envia * .debug ao host de log central. O host central do syslog executa o syslog-ng e possui regras para dividir os logs, para que cada máquina gere seus próprios arquivos nomeados para esse dia. Ele também despeja tudo em um único arquivo, no qual eu corro um descendente do logcheck.sh.
Uma vez por dia, eu executo um compactador de log, que fecha os logs com mais de 7 dias e exclui qualquer coisa com mais de 28 dias. Entre os dois, ele fornece aos logs uma vida esperada de 35 dias no servidor, o que significa que todos os logs devem fazer backups mensais, onde podem ser recuperados por até dois anos.
É um armazenamento intenso, mas parece ser a melhor maneira de garantir cobertura.
fonte
Para o log centralizado, eu recomendo o LogZilla . Nós o usamos há mais de um ano e absolutamente amamos. A interface do usuário é extremamente fácil de aprender, o uso e a instalação levaram cerca de uma hora.
Mesmo se não o fizer, você realmente deve tentar fugir do monitoramento baseado em script, pois é exatamente isso que você obtém ... o monitoramento. O que você deve tentar alcançar é Gerenciamento. Reparar problemas nos principais interlocutores, etc. reduzirá bastante a quantidade de "incêndios" acionados pelo monitoramento por script. Aqui está um artigo muito bom sobre gerenciamento de syslog:
http://www.cisco.com/en/US/technologies/collateral/tk869/tk769/white_paper_c11-557812.html
fonte
Usamos um dispositivo da LogLogic para o registro corporativo. É baseado no syslog, portanto, todas as caixas * nix não têm problemas em usá-lo; existe um pequeno aplicativo que precisa ser instalado nos servidores Windows. Posso pesquisar o que eu quiser, incluindo consultas REGEX, e parece ser capaz de lidar com um pouco de carga (nossa configuração do Active Directory sozinha gera uma quantidade incomparável de tráfego).
fonte
Para o servidor de registro centralizado, você pode dar uma olhada no meu projeto Octopussy .
É muito trabalho no começo, mas depois você pode fazer muitas coisas com esses logs!
fonte
Aqui está um tutorial que escrevi que aborda todos os aspectos do registro e análise centralizados.
Link: http://crunchtools.com/centralizing-log-files/
fonte