Рейтинг:0

Как работает logrotate?

флаг mx
TS_

Что именно делает logrotate, когда «вращает» файл журнала? Например, переименовывает ли он существующий файл и создает новый со старым именем?

эта статья описывает перезапуск службы после ротации журналов, чтобы она могла использовать новый файл журнала. Это только потому, что процесс может сохранить открытый дескриптор старого файла? Если мой процесс открывает новый дескриптор файла каждый раз, когда он записывает в журнал, будет ли он использовать новый файл журнала без перезапуска?

флаг in
открытие и закрытие для каждой записи вводит другие проблемы, производительность, конечно, является одним фактором, другой - условиями гонки. logrotate часто представляет собой отдельный процесс, который переименовывает существующие журналы, а затем сигнализирует демону журнала о повторном открытии файлов, время между переименованием файла и сигналом позволяет записывать данные в теперь переименованный файл с использованием существующего дескриптора. (перезапуск не требуется)
Рейтинг:0
флаг za

Если только копироватьусечение используется, каждый раз, когда журнал переименовывается в новое имя (например, лог.0), а затем создается пустой файл. постротировать используется для уведомления процесса-владельца о необходимости повторного открытия журнала.

Если процесс тупой и не может повторно открыть свои журналы через сигнал, то копироватьусечение следует использовать - в этом случае содержимое файла журнала копируется вместо переименования, а затем журнал просто усекается.

Если процесс повторно открывает журналы для каждой записи (таким образом, после этого он должен закрыть журнал, иначе дескрипторы открытых файлов будут накапливаться, если они не будут исчерпаны до предела ОС/пользователя), то вы можете опустить уведомление процесса-владельца. Но это редкий случай, потому что такой подход ставит под угрозу производительность записи логов, когда в логи постоянно записывается много информации.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.