Я использую newsyslog
чтобы повернуть мой файл журнала в приложении Rails. Журнал успешно вращается, но Rails и Sidekiq по-прежнему ведут журнал в старом файле (development.log.0
и sidekiq.log.0
).
После перезапуска Rails и Sidekiq они обычно входят в development.log
и sidekiq.log
.
Как мне сделать так, чтобы они корректно регистрировались после ротации журналов без перезапуска сервера? Спасибо.
Вот мой /etc/newsyslog.d/dev_logs.conf
:
/Users/.../my_server/log/*.log me:staff 664 7 * $D0 GN
Вам нужно добавить postrotate
сценарий к вашему logrotate
конфигурация, которая либо перезапускает ваше приложение, либо отправляет ему сигнал о закрытии и повторном открытии файла журнала, чтобы он не продолжал использовать свой старый дескриптор файла, который теперь указывает на старый файл.