noob问题:
我想在控制台上禁用静态资产的日志记录,我只想看到正常的http请求(而不是静态文件的请求)。
我总是在控制台上得到这个所有的静态文件加载
[24/Sep/2014 22:18:55] "GET / HTTP/1.1" 200 39816
[24/Sep/2014 22:18:55] "GET /static/2.5.11/socialschools/css/molengo/molengo-regular-webfont.css HTTP/1.1" 200 509
[24/Sep/2014 22:18:55] "GET /static/2.5.11/socialschools/js/less.1.7.0.min.js HTTP/1.1" 200 101854
[24/Sep/2014 22:18:55] "GET /static/2.5.11/socialschools/js/html5shiv.3.7.0.js HTTP/1.1" 200 2428
[24/Sep/2014 22:18:55] "GET /static/2.5.11/socialschools/js/jquery.1.9.1.min.js HTTP/1.1" 200 92629
[24/Sep/2014 22:18:55] "GET /static/2.5.11/socialschools/js/respond.1.4.2.min.js HTTP/1.1" 200 4377
[24/Sep/2014 22:18:55] "GET /static...
字符串
有什么办法能让它失效吗?
例如在express(nodejs)中,如果我把日志中间件放在静态中间件之前,它就不会记录静态文件。
2条答案
按热度按时间clj7thdc1#
我发现这个问题很老了(4年零8个月)我想为这个任务添加可能的解决方案。由于在控制台上登录静态资产是由日志模块管理的,所以答案是在日志配置中。在python日志中有一个
filter
的概念,它允许record
被loggers链进一步传递,或者简单地通过返回布尔值True或False来抑制。我遇到过几次这个问题,所以我想在这里提出一个解决方案:
1.在
somemodule
中编写一个Filter。字符串
**编辑:**对于Django 2.2:将
GET /static/
替换为HTTP GET /static/
1.现在让我们将这个过滤器添加到设置中:
型
现在您将看不到任何以
"GET /static/
开头的日志记录。您可以添加更多过滤器,并使用复杂的规则来决定是否要查看该记录(例如,如果静态请求是404,请不要隐藏它们)希望能帮助人们摆脱伐木污染。
bnlyeluc2#
不幸的是,
runserver
命令不像其他管理命令那样支持--verbosity
选项。有关
--verbosity
选项的更多信息,请访问:https://docs.djangoproject.com/en/1.7/ref/django-admin/#displaying-debug-output核心开发人员已将此错误标记为“wontfix”:https://code.djangoproject.com/ticket/15132