如果代码已从控制台应用程序执行(如manage.py <cmd>
),则需要启用日志记录,如果正在处理HTTPRequest,则需要禁用日志记录。可能过滤器在这里非常有用。
LOGGING = {
...
'filters': {
'require_debug_false': {
'()': 'IsFromHTTPRequest'
}
},
...
}
但是,定义命令是否已执行或正在处理HTTPRequest的最佳方法是什么?回溯分析?
答案 0 :(得分:1)
嗯,没有好办法。但是,当我们需要将manage.py jenkins
与常规http请求区分开来时,我们会采取以下措施:
添加到settings.py
import sys
JENKINS = "jenkins" in sys.argv
然后您可以随时使用该变量。也在日志过滤器中。