Eu criei um arquivo de configuração logrotate:
touch /etc/logrotate.d/.test
com as confusões:
/home/myUser/test*.log{
size 0
hourly
rotate 0
nocreate
nocompress
missingok
nocopytruncate
ifempty
}
Eu quero poder limpar os arquivos depois de cada entrada (arquivo de log de bloco) ou em alguns arquivos de log para limpar as últimas entradas 'n'. Na verdade, eu quero continuar fazendo:
truncate -s 0 /home/myUser/test*.log
Como está, nocopytruncate
delete é o arquivo de log. Se eu colocar copytruncate
, cria um segundo log de cada log "teste * .log.1", ignorando rotate 0
.
Se eu executo os comandos abaixo, não faço nada, ignorando size 0
.
echo "hello" >> ~/test1.log
cat ~/test1.log
//output: hello
Parece que não funciona usando size
. Para que isso funcione, preciso executar:
logrotate -f .test
Estou fazendo algo errado?
É possível fazer isso usando logrotate e manter o arquivo de configuração escondido de alguma forma (como está)?
Quanto à segunda parte para apagar as últimas 'n' enries, não tenho ideia de como posso fazer isso com o logrotate.