Fala Galera,
Quem administra servidores tomcat, com varias aplicações sempre sofre com o arquivo catalina.out que não para de encher o tempo todo, e sempre acaba lotando sua partição /usr. Pois bem, neste post irei rapidamente lhe mostrar como resolver esse problema rotacionando este log.
O único pre-requisito pra este procedimento é que você tenha espaço suficiente dentro do seu /usr porque durante o rotacionamento o SO vai criar um novo arquivo do catalina.out compactado, e só depois disso ele ira apagar o arquivo original e criar um novo zerado. No meu caso eu tive que fazer um backup do arquivo catalina.out pra outra partição, restartar o tomcat pra que ele pudesse criar um outro catalina.out e só depois disso pedir para que fizesse o rotacionamento, tive que fazer isso por que eu não tinha espaço em disco suficiente.
Bem, verificado se existe espaço em disco, vamos para os procedimentos que foram realizados no DEBIAN 7(Wheezy).
1- Crie um arquivo de texto dentro do seu /etc/logrotate.d/tomcat com o seguinte conteúdo:
/usr/local/tomcat/logs/catalina.out { #Ajuste este caminho para o endereço correto do catalina.out, caso não seja este.
copytruncate #Permite o aproveitamento do arquivo de log antigo, limando o mesmo em vez de remove-lo.
daily #Freqüência que o logrotate é executado pode ser semanal ou mensal também.
rotate 7 #Configura quantos arquivos rotacionados serão guardados, o ultimo arquivo é apagado.
compress #Comprime os arquivos rotacionados em gzip.
missingok #Se o arquivo de log não existir ele passa para o próximo sem erros.
size 50M #Limite do tamanho de cada log, quando o catalina.out chega a este tamanho ele rotaciona.
}
OBS: Este procedimento normalmente pode ser utilizado para qualquer outro arquivo de log, desde que você ajuste as opções e os apontamentos corretamente.
Apos isto feito você pode executar manualmente o logrotate, ou pode aguardar um dia, pois o arquivo esta configurado para rodar diariamente.
Para rodar manualmente execute:
# logrotate /etc/logrotate.conf
Para rodar manualmente forçando a execução:
# logrotate --force /etc/logrotate.conf
Para rodar manualmente forçando e mostrando todos os detalhes da execução:
# logrotate --force --verbose /etc/logrotate.conf
Quando executar ou aguardar o horário da execução automática, o logrotate, ira criar um arquivo compactado chamado: catalina.out.1.gz e ira limpar o catalina.out. Na segunda execução ele ira renomear o catalina.out.1.gz para catalina.out.2.gz e compactar o novo catalina.out para catalina.out.1.gz, limpar o catalina.out, e assim por diante.
Dessa forma abaixo:
É isso galera, este é um problema que acontece bastante comigo, porque normalmente o pessoal se esquece de configura esse rotacionamento e acaba sempre acontecendo da partição /usr lotar, e as aplicações rodando no tomcat pararem.
Até a próxima!
Valeu!
Marckson Junior
Referencias:
https://blog.tuannh.com/config-logrotate-for-nginx-with-custom-log-path/
http://www.dicas-l.com.br/arquivo/utilizando_logrotate.php
Referencias:
https://blog.tuannh.com/config-logrotate-for-nginx-with-custom-log-path/
http://www.dicas-l.com.br/arquivo/utilizando_logrotate.php
http://linuxcommand.org/man_pages/logrotate8.html
Nenhum comentário:
Postar um comentário