test.sh
#!/bin/bash
echo "Hello World"
test2.sh
#!/bin/bash
while true
do
sh test.sh >> /script_logs/test.log &
done
Eu quero implementar o logrotate para controlar o tamanho do arquivo de log; então, como implementar o logrotate, se a situação for como acima?
cp
emv
posso remover o arquivo de log, ele criará um novo arquivo de log com o mesmo nome? (Meu requisito é que, se o arquivo de log atingir um determinado limite, desejo remover esse arquivo de log e criar um novo arquivo )>>
para anexar ao arquivo de log,>
sobrescrevendo-o repetidamente.>
, estou recebendotail: test.log: file truncated Hello World!
.... Se eu estiver usando>>
, estou recebendo uma mensagem de log correta, mas o tamanho do arquivo está aumentando. Nenhuma condição verificando a condição ... ;-(que tal usar
savelog
?Está disponível no debian e RH e praticamente todas as outras distribuições Linux que eu conheço. É um script de shell / bin / sh, portanto deve ser executado em qualquer outro unix também.
por exemplo, antes de escrever qualquer coisa para
test.log
executarsavelog -n -c 7 test.log
. Isso manterá as 7 versões não vazias mais recentes do test.log. Por padrão, ele comprime os logs rotacionados (mas que podem ser desativados-l
).Se necessário, você pode verificar o tamanho
test.log
e somentesavelog
se estiver acima de um determinado tamanho.fonte
/usr/bin/savelog
shell script em sources.debian.net/src/debianutils/4.7savelog
em nenhuma das minhas caixas RHEL / CentOS 5/6, então acabei de fazer o download ad hoc e parece funcionar muito bem para minhas necessidades.savelog
é que ele renomeia o arquivo, mas leva muito tempo para compactar os antigos antes de terminar. Enquanto isso, o log .0 já recebe entradas nos próximos dias. Idealmente, o tempo entre a rotação do log e a sinalização do processo para reabri-lo deve ser mínimo. Desativeisavelog
o recurso de compactação por causa disso.Eu escrevi um logrotee neste fim de semana. Provavelmente não saberia se tivesse lido a ótima resposta do
multilog
@ JdeBP .Eu me concentrei em ser leve e poder bzip2 seus pedaços de saída como:
Ainda há muito a ser feito e testado.
fonte
Como ainda não consigo adicionar comentários à resposta aceita , uma dica do BusyBox , onde
du
não tem um-b
sinalizador:fonte