在不使用Django自带的日志模块,我想把请求和响应信息使用自定义的日志模块记录下来,比如记录请求的请求地址、请求方法、请求路径、请求信息,返回状态码、返回内容长度,要如何做呢?
前面我写了一个日志装饰器,但是只能记录到我写入了视图的request,而无法记录接收到的所有request,于是我想到了用中间件,而Django自定义中间件也很简单。那么我们开始吧,自定义Django中间件记录请求和响应信息到日志中。
假设项目结构如下:
- Myproject
- Myproject
- __init__.py
- settings.py
- urls.py
- wsgi.py
- ...