У меня задача cron, настроенная в каталоге cron.d, которая будет выполняться каждые 5 минут. ЗаписьЗапись в cron.d не выполнена
*/5 * * * * root /usr/sbin/logrotate /etc/logrotate.d/test_consolelog
Это вызовет логротат. Однако логротата не произошло. Я проверил файл/var/log/cron, чтобы узнать, выполняет ли cron команду и может видеть, что команда выполняется за каждые 5 минут.
Я попытался выполнить команду mannually на терминале и мог видеть, что команда выполнена, и происходит поворот журнала.
Что может быть причиной того, что logrotate не происходит при выполнении команды cron.d.
Regars, Bala
Это может зависеть от конфигурации logrotate от test_consolelog (например, он не вращается, потому что вы просто пытались вручную, и никакое условие не запускает вращение), PLS добавить его к вопросу; или, если вы хотите всегда принудительно запускать logrotate, даже если условия не выполняются, используйте параметр '-f' –
Извините, что пропустили его. Я настроил logrotate для вращения, когда размер файла превышает 20Mb. Когда выполняется задача cron, я проверил размер файла более 35 Мб. Однако логротация не удалась. Когда я запускаю одно и то же вручную, вращение было успешным. Запись в LogRotate конфигурационный файл является /var/test/testagent/logs/*.log { nocompress copytruncate notifempty missingok поворот 50 размер 20M } – Balachandar
Что вы имеете в виду под "не удалось"? Вы получили какую-либо ошибку или просто не произошло? В любом случае, попробуйте изменить команду cron на '*/5 * * * * root/usr/sbin/logrotate -f/etc/logrotate.d/test_consolelog' и посмотреть, что произойдет –