Де logrotate зберігає власний журнал?


25

Я logrotateпрацюю в машині EC2 AWS, що обертає журнали Apache. Після упаковки журнали Apache зберігаються в AWS S3 через s3fs. Проблема в тому, що я нещодавно помітив, що у мене не обертаються журнали. У S3 у мене старі журнали з дня 48-> 60, але 1-> 47 не відображається.

Моє запитання: де logrotate зберігає власний журнал? Можливо, у мене є якась проблема з s3fs, але мені потрібно знати, перш ніж щось робити. Я спробував десь знайти журнали, але не зміг його знайти.

Будь-яка ідея?

Відповіді:


20

logrotateне записує нічого за замовчуванням. зазвичай це має бути десь у вашому кроні, наприклад:

$ grep -r -- 'logrotate.conf' /etc/cron*
/etc/cron.daily/logrotate:/usr/sbin/logrotate /etc/logrotate.conf

Ви можете або запустити це вручну, щоб побачити, що не так, або перенаправити логротатний висновок на файл у наведеному вище кроні, щоб побачити, що сталося наступного дня.

Ймовірно, де-то конфігурація невірна і призвела до розриву запуску логротату.


+1 в режимі запуску логротету вручну, щоб побачити, що не так
cjc

дякую за відповідь, але що я дуже хочу знати, що сталося в моїй системі, щоб отримати такий вид результату. Спасибі!
enedebe

чи вводить логротат вручну помилки? якщо є помилки, їх потрібно виправити у файлі conf або /etc/logrotate.d/apache (або apache2).
johnshen64

4
Ви можете використовувати -dпрапор налагодження та прапор -fсили, щоб побачити, що саме логротат намагається зробити. -dвідключає дію, але друковані повідомлення все одно стверджують, що вони змінюють.
Девід Лорд

Під час запуску /usr/sbin/logrotate /etc/logrotate.confя додам -vпереглянути докладний журнал.
Денніс Голомазов


5

Ще одне хороше місце для пошуку - це /var/log/messagesCentOS на помилки, такі, як це від cron.daily/etc/cron.daily/logrotate

logrotate: ALERT exited abnormally with [1]

Ви також можете запустити в режимі налагодження вручну та перевірити на помилки:

/usr/sbin/logrotate -d /etc/logrotate.conf

Джерело: https://access.redhat.com/solutions/32831


2

Якщо ви працюєте logrotateз cron і не переспрямовуєте висновок, висновок, якщо він є, перейде на електронну пошту для того, який ідентифікатор виконує завдання cron. Я перенаправляю свій вихід на файл журналу.

Наприклад:

25 3 * * 7 /usr/sbin/logrotate -s /home/user/conf/mwarelogrotate.state 
/home/user/conf/mwarelogrotate.conf >> /home/user/logs/logrotate.log 2>&1

1

Перевірте /etc/logrotate.confглобальні налаштування конфігурацій, які можуть впливати на завдання, налаштовані через/etc/logrotate.d/


0

Коли logrotate не обертає журнали або не переходить у невдалий стан, непогано запустити логотип вручну в режимі налагодження, щоб побачити, які помилки в ньому перелічені, наприклад:

/usr/sbin/logrotate -d /etc/logrotate.d/*

Ця команда перевіряє обертання журналів для всіх служб, у яких розміщені файли /etc/logrotate.d. Якщо в ньому перераховані помилки (наприклад, помилки, викликані дублюючими записами журналу), ви дізнаєтесь, чому у логротета виникають проблеми.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.