1. Django记录请求和响应信息的日志装饰器
写一个Django记录请求和响应信息的日志装饰器,接收请求时,记录请求的请求地址、请求方法、请求路径、请求信息,返回状态码、返回内容长度。
from functools import wraps
def http_logger(logger):
def logging_decorator(func):
@wraps(func)
def wrapped_function(*args, **kwargs):
request = args[0]
response = func(*args, **kwargs)
logger.info(f'Received Request: {request.META["REMOTE_ADDR"]} {request.method} "{request.META["PATH_INFO"]}'
f'{request.META["QUERY_STRING"]} {request.META["SERVER_PROTOCOL"]}" {response.status_code} {len(response.content)}')
return response
return wrapped_function
return logging_decorator
2. 使用日志装饰器
日志logger可以使用python自带的logging模块创建的logger。也可以使用后文的logging代码。
from Log.logging import Logger
from Log.logging

最低0.47元/天 解锁文章
1005

被折叠的 条评论
为什么被折叠?



