日志添加过滤条件和Django的WSGIRequest对象

日志添加过滤条件

添加过滤中间件的类
class RequestIDFilter(logging.Filter):
def filter(self, record):
record.request_id = getattr(local, ‘request_id’, “none”)
return True
配置自定义类
‘filters’: {
‘require_debug_true’: {
‘()’: ‘django.utils.log.RequireDebugTrue’, # 此过滤器仅在settings.DEBUG为True时传递记录
},
‘require_debug_false’: {
‘()’: ‘django.utils.log.RequireDebugFalse’, # 此过滤器仅在settings.DEBUG为False时传递记录
},
‘request_id’: {
‘()’: ‘libs.custom_middleware.RequestIDFilter’, # 自定义的filter
}
},
把过滤条件添加到自定义的日志handlers里面
‘handlers’: {
# 标准输出
‘console’: {
‘level’: ‘ERROR’,
‘class’: ‘logging.StreamHandler’,
‘formatter’: ‘standard’
},
# 自定义 handlers,输出到文件
‘restful_api’: {
‘level’: ‘DEBUG’,
# 时间滚动切分
‘class’: ‘logging.handlers.TimedRotatingFileHandler’,
‘filters’: [‘request_id’],
。。。
},
},
WSGIRequest对象:
Django在接收到http请求之后,会根据http请求携带的参数以及报文信息创建一个WSGIRequest对象,并且作为视图函数第一个参数传给视图函数。这个参数就是django视图函数的第一个参数,通常写成request。在这个对象上我们可以找到客户端上传上来的所有信息。这个对象的完整路径是django.core.handlers.wsgi.WSGIRequest
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值