Можно ли запустить одну итерацию logrotate вручную, не планируя ее на некоторый интервал?
Можно ли запустить одну проверку logrotate вручную?
Ответ 1
Да: logrotate --force $CONFIG_FILE
Ответ 2
logrotate -d [your_config_file]
вызывает режим отладки, предоставляя подробное описание того, что произойдет, но не оставляя файлы журнала нетронутыми.
Ответ 3
Если вы хотите принудительно запустить один конкретный каталог или файлы журнала демона, вы обычно можете найти конфигурацию в /etc/logrotate.d
, и они будут работать автономно.
Имейте в виду, что глобальная конфигурация, указанная в /etc/logrotate.conf
, не будет применяться, поэтому, если вы сделаете это, вы должны убедиться, что вы указали все параметры, которые вы хотите в конфигурационном файле /etc/logrotate.d/[servicename]
.
Вы можете попробовать с помощью -d
посмотреть, что произойдет:
logrotate -df /etc/logrotate.d/nginx
Затем вы можете запустить (используя nginx в качестве примера):
logrotate -f /etc/logrotate.d/nginx
И только журналы nginx будут повернуты.
Ответ 4
Возможно, вы захотите запустить его в режиме подробных + силовых.
logrotate -vf /etc/logrotate.conf
Ответ 5
Способ запуска всего logrotate:
logrotate -f /etc/logrotate.conf
который будет запускать основной файл logrotate, который также включает в себя другие конфигурации logrotate
Ответ 6
Выполните следующую команду, способ запуска указанного логротата:
logrotate -vf /etc/logrotate.d/custom
Параметры:
-v: показать процесс
-f: принудительное выполнение
custom: пользовательская настройка журнала
например: MongoDB-журнал
# mongodb-log rotate
/data/var/log/mongodb/mongod.log {
daily
dateext
rotate 30
copytruncate
missingok
}
Ответ 7
Создал оболочку script для решения проблемы.
http://www.ict.griffith.edu.au/anthony/software/#logrotate_one
Этот script будет запускать только один файл подконфигурации logrotate, найденный в "/etc/logrotate.d", но включает глобальные параметры из глобального файла конфигурации "/etc/logrotate.conf". Вы также можете использовать другие отпионы для тестирования...
Например...
logrotate_one -d syslog
Ответ 8
отредактируйте/var/lib/logrotate.status до reset дату последнего поворота в файле журнала, который вы хотите проверить.
Затем запустите logrotate YOUR_CONFIG_FILE
.
Или вы можете использовать флаг -force, но редактирование logrotate.status дает вам больше точности над тем, что делает и не поворачивается.