我们正在使用uWSGI为Django应用程序提供服务。我们还利用uWSGI的mules和spooler系统定期运行作业,并在请求/响应周期之外异步执行一些任务。在
uWSGI处理HTTP请求的部分可以使用Django logging configuration。然而,当使用uWSGI的cron和mulefunc特性时,通常根本不会配置记录器——您将调用日志.错误()异常就消失了。我们发现了一个奇怪的解决办法,我在下面解释。在
这是我们的日志设置,在settings.py。StreamHandler默认路由到stderr,因此我们应该看到所有级别为DEBUG或更高级别的日志路由到stderr。在LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'verbose'
}
},
'loggers': {