Я пытаюсь настроить logrotate
для поворота и удаления файлов журнала каждый день в полночь, но никогда не использовали его раньше. Итак: (a) я хочу подтвердить, что моя конфигурация верна, и (b) мне нужна помощь в автоматизации ее ежедневного выполнения в полночь.
мое программное обеспечение создает большой файл журнала в /abs/path/to/log/myapp-log.txt
. Вот что бы мне хотелось, чтобы произошло:
- отметка времени для каждого файла журнала с расширением даты в его имени
- есть только 1 файл журнала в
/abs/path/to/log/
в любой момент времени; поэтому каждый раз, когда бревно вращается и создается новый файл журнала, удалить старый
logrotate.conf
:
/abs/path/to/log/myapp-log.txt {
daily
copytruncate
create 700 myUser myGroup
dateext
maxage 1
missingok
}
несколько вещей, в которых я не уверен:
- нужно ли указывать
daily
если я указываюmaxage
на 1? - что именно
missingok
делаешь? Что-то об игнорировании системного предупреждения, если файл журнала не существует? Что произойдет, если я не укажуmissingok
и файл журнала не там? - мне нужно
copytruncate
если я указываюdaily
/maxage 1
? Эти три параметра кажутся немного избыточными, но не уверены, какую роль каждый из них играет.
во-вторых, как я могу гарантировать, что это будет выполняться каждый день в полночь? Крон? Я спрашиваю только потому, что читаю где-то это /etc/cron.daily/logrotate
запускается автоматически каждый день, но не уверен, как это можно настроить. Спасибо заранее.