Este é o arquivo de log que estou usando para compactar arquivos de log diariamente.
/home/ubuntu/logs/server.log {
daily
missingok
rotate 1
compress
create
dateext
dateyesterday
dateformat .%Y-%m-%d
extension .gz
postrotate
mv /home/ubuntu/logs/*.gz /home/ubuntu/zip/
endscript
}
Quando executo a opção --force
, não vejo o arquivo compactado. Eu posso ver apenas a extensão de data aplicada ao arquivo. Aqui está o resultado da execução do comando
logrotate /home/ubuntu/conf/logrotate.conf --state /home/ubuntu/conf/logrotate.state --verbose --force
Resultado:
rotating pattern: /home/ubuntu/logs/server.log forced from command line (1 rotations)
empty log files are rotated, old logs are removed
considering log /home/ubuntu/logs/server.log
log needs rotating
rotating log /home/ubuntu/logs/server.log, log->rotateCount is 1
Converted ' .%Y-%m-%d' -> '.%Y-%m-%d'
dateext suffix '.2018-03-04'
glob pattern '.[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]'
glob finding old rotated logs failed
renaming /home/ubuntu/logs/server.log to /home/ubuntu/logs/server.log.2018-03-04
creating new /home/ubuntu/logs/server.log mode = 0664 uid = 1000 gid = 1000
running postrotate script
mv: cannot stat '/home/ubuntu/logs/*.gz': No such file or directory
error: error running non-shared postrotate script for /home/ubuntu/logs/server.log of '/home/ubuntu/logs/server.log '
Como posso garantir que o arquivo de log criado ontem seja zipado e que um novo vazio seja criado para hoje?