Можно ли запустить одну проверку logrotate вручную?

Можно ли запустить одну итерацию logrotate вручную, не планируя ее на некотором интервале?

8 ответов

Решение

Да: logrotate --force $CONFIG_FILE

logrotate -d [your_config_file] вызывает режим отладки, предоставляя подробное описание того, что произойдет, но оставляя файлы журнала без изменений.

Если вы хотите принудительно запустить отдельный каталог или файлы журнала демона, вы обычно можете найти конфигурацию в /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 будут вращаться.

Возможно, вы захотите запустить его в режиме verbose + force.

logrotate -vf /etc/logrotate.conf

Способ запустить все logrotate:

logrotate -f /etc/logrotate.conf

который запустит основной файл logrotate, который включает в себя и другие конфигурации logrotate

Выполните следующую команду, способ запустить указанный logrotate:

logrotate -vf /etc/logrotate.d/custom

Опции:

-v: показать процесс

-f: принудительный запуск

custom: пользовательские настройки журнала

например: mongodb-log

# mongodb-log rotate

/data/var/log/mongodb/mongod.log {
    daily
    dateext
    rotate 30
    copytruncate
    missingok
}

Отредактируйте /var/lib/logrotate.status, чтобы сбросить дату "последнего поворота" в файле журнала, который вы хотите проверить.

Тогда беги logrotate YOUR_CONFIG_FILE,

Или вы можете использовать флаг --force, но редактирование logrotate.status дает вам большую точность по отношению к тому, что вращается, а что нет.

Создан сценарий оболочки для решения проблемы.

http://www.ict.griffith.edu.au/anthony/software/

Этот скрипт будет запускать только один файл субконфигурации logrotate, который находится в /etc/logrotate.d, но включает глобальные настройки из файла глобальной конфигурации "/etc/logrotate.conf". Вы также можете использовать другие otpions для тестирования...

Например...

  logrotate_one -d syslog
Другие вопросы по тегам