我的 celery 配置文件中有以下设置:
- CELERYD_LOG_DEBUG='假'
- CELERYD_LOG_FILE=r'/var/log/celery/celeryd.log'
- CELERYD_LOG_LEVEL="错误"
我查看了 celery 的设置文件,并没有在配置中指定日志文件大小限制的选项。甚至代码看起来都使用 StreamHandler 而不是 RotationHandler 类。任何线索/提示?
谢谢。
我的 celery 配置文件中有以下设置:
我查看了 celery 的设置文件,并没有在配置中指定日志文件大小限制的选项。甚至代码看起来都使用 StreamHandler 而不是 RotationHandler 类。任何线索/提示?
谢谢。
对于 Ubuntu 上的日志轮换,如果您的 celery 日志位于 /var/log/celery/celeryd.log 中,则可以使用上述配置通过 /etc/logrotate.d/ 进行每周日志轮换。
/var/log/celery/*.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
copytruncate
}
尝试使用[WatchedFileHandler][1]
. 它注意到文件已被截断或以其他方式更改并重新打开文件。请注意,您必须设置CELERY_HIJACK_ROOT_LOGGER = False 然后自己设置此记录器,并自己在任务中执行 logging.getLogger('custom_logger')。请参阅这篇文章,了解 Celery 的内置日志配置如何不灵活且无法进行细粒度控制。