Rotação de Arquivos de Log
Publicado por Cleiton José 21/10/2004
[ Hits: 8.904 ]
Para que não tenhamos arquivos de log muito grandes, geralmente se implementa alguma forma de rotacionar estes arquivos. Isto é feito normalmente através do newsyslog ou através de scripts. Iremos geralmente optar pelos scripts, devido à flexibilidade que proporciona. Segue abaixo um exemplo de script. Crie o arquivo /usr/local/script/rotate_log_programa.sh, com a permissão 700 e o seguinte conteúdo:
#Rotação de Arquivos de Log
#-- Arquivo rotate_log_programa.sh --------------------
#!/bin/sh
# finaliza o Programa
/comando/para/finalizar/o/programa
# Define o nome para arquivamento
OLD_LOG=/caminho/para/o/arquivamento/programa.log.`date +%y%m%d-%H%M%S`
# move o arquivo para o diretorio de arquivamento
mv /arquivo/de/log/programa.log `echo $OLD_LOG`
# inicializa o Programa
/comando/para/inicializar/o/programa
# compacta o arquivado
/usr/bin/gzip $OLD_LOG
# apaga os logs com mais de um ano
find /caminho/para/o/arquivamento -mtime +365 -exec rm -f {} \;
#-- Fim do arquivo rotate_log_programa.sh --------------------
Obs:
#Edite o arquivo /etc/crontab e adicione uma linha para executar o #script na hora desejada, como por exemplo:
#0 0 1 * * root /usr/local/script/rotate_log_programa.sh
#Isto fará com que o script de rotação do log seja acionado à meia-#noite do primeiro dia do mês, separando os logs de cada mês em #arquivos diferentes. Cada arquivo guardado terá data e hora anexado #ao nome. O comando find é opcional e pode ser configurado com outro #período de tempo.
# Não esqueça de dar a devida permisão para ser executado
# chmod +x rotate_log
Kit de Scripts para Backup (Full + Diferencial + SMBmount + Rede) - Atualizado
Trocar string A por string B em vários arquivos
FTP Linux-Windows Baseado na Data Atual
Script - Realizando relatório do servidor
Adicionando novo usuário manualmente
Nenhum comentário foi encontrado.
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Podem me chamar de 1mbecil :) (3)
diferença entre o Tor baixado pelo Gerenciador de Aplicativos e o Tor ... (3)
Servidor de DNS BIND Ubuntu server (0)
Debian Stable travado em atualizações: dist-upgrade não resolve [RESOL... (11)









