我使用pygelf日志处理程序将Flask应用程序与Graylog集成。在
根据documentation,Graylog基于RFC 3164支持八个syslog严重级别,即:
(...)
Numerical Severity
Code
0 Emergency: system is unusable
1 Alert: action must be taken immediately
2 Critical: critical conditions
3 Error: error conditions
4 Warning: warning conditions
5 Notice: normal but significant condition
6 Informational: informational messages
7 Debug: debug-level messages
(...)
虽然Graylog支持级别5,即notice
,但Python的日志记录包似乎既没有notice()
日志记录方法(如info()
或{
问题: {{cda>有没有使用^ cd5>级别的方法?在
其他背景:
我使用的是Flask框架,默认情况下,它使用日志级别6(info
)和7(debug
)来记录自己的内部http请求数据,如下所示:
101.101.101.101 - - [03/Sep/2019 14:15:55] "GET /static/images/favicon.ico HTTP/1.0" 200 -
由于这些内部日志,我自己的info
和debug
级日志在人群中丢失。我不想完全过滤掉它们,但是我仍然希望有一些不同的信息日志级别,它没有warning
那么高——这就是为什么我可以使用notice
级别的日志记录,不幸的是,我不能开箱即用。在
Pygelf在内部持有一个
dict
,它映射Python日志记录级别及其相应的Graylog日志记录级别,在gelf.py
中:我的解决方案:为了登录Graylog的第5级(通知),我必须:
- 在记录器配置中添加新的日志级别映射:
^{pr2}$相关问题 更多 >
编程相关推荐