我们有一个生产的django应用程序设置,
记录处理程序定义为
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': '/path/to/django/debug.log',
},
},
我们的日志文件中打印的日志不是有序的,有些是不完整的,打印完其他日志后会打印出来。
服务器在gunicorn上运行(有3名工作人员)。
是因为工人异步运行吗?有什么办法解决吗?
答案 0 :(得分:1)
每个工作人员都应该写入自己的日志文件(例如debug.worker1.log
)。您现在有几个进程竞争写入同一个文件,这可能意味着事情不按时间顺序编写。
然后,您应该使用单独的工具(例如,Unix工具或日志记录聚合工具)来合并它们或根据需要对它们进行分析。