Как я могу отслеживать, что делает logrotate в Ubuntu? Можно ли контролировать активность logrotate?
Как я могу отслеживать, что делает logrotate в Ubuntu? Можно ли контролировать активность logrotate?
Ответы:
cat /var/lib/logrotate/status
Чтобы проверить, действительно ли конкретный журнал вращается или нет, а также проверить последнюю дату и время его вращения, проверьте файл / var / lib / logrotate / status. Это аккуратно отформатированный файл, который содержит имя файла журнала и дату последнего поворота.
Взято из:
/var/lib/logrotate.statusв системах Red Hat.
cat /var/lib/logrotate/status показывает только активность logrotate, инициированную пользователем root . Cronjobs других пользователей могут запускать свои собственные действия logrotate, например, когда их crontab включает в себя такую запись, как 0 0 * * * /usr/sbin/logrotate $HOME/logrotate/logrotate.conf --state $HOME/logrotate/logrotate-state. Эта активность logrotate будет записана в файл $HOME/logrotate/logrotate-state, и $HOMEбудет домашним каталогом этого пользователя.
/var/lib/logrotate/logrotate.status.
Вы можете попробовать запустить logrotate в режиме отладки или в подробном режиме:
-d Turns on debug mode and implies -v. In debug mode, no changes
will be made to the logs or to the logrotate state file.
-v, --verbose
Display messages during rotation.
sudo logrotate -v /etc/logrotate.conf 2>&1 | sudo tee -a /var/log/logrotate.log >/dev/null(убедитесь, что у вас есть -a).
В дистрибутивах Suse Linux это так:
cat /var/lib/logrotate.status
Различные журналы чередуются на разных частотах в зависимости от файла конфигурации (/etc/logrotate.conf) и / или каталога (/etc/logrotate.d). Имена могут различаться в разных дистрибутивах. Конфигурация может указывать действия до и / или после поворота. Имена повернутых файлов и дата последней ротации находятся в файле состояния (/ var / lib / logrotate / state).
Logrotate не имеет средств ведения журнала. Действия перезапуска / перезапуска, которые он инициирует, будут регистрироваться в соответствии с регистрацией для программы, в которой выполняется действие.
Самый простой способ сделать это - отредактировать /etc/cron.daily/logrotateи включить -vопцию. Подробно о конфигурации и опциях logrotate можно узнать с помощью команды man logrotate.
Чувак, вы можете проверить настройки logrotate, как правило, в /etc/logrotate.conf.
Современные дистрибутивы имеют специальный logrotateфайл конфигурации в /etc/logrotate.dкаталоге.
например для nginx
/var/log/nginx/*.log {
weekly
missingok
rotate 52
Он будет хранить файл в течение 52 недель (год). Ротация еженедельная.
Примечание: user56548 раньше был "Чувак"
rotate 365или weekly. Ежедневная ротация с rotate 5252 днями будет храниться, очевидно.
weekly