python - aiohttp中的自定义访问日志
问题描述
我希望在 aiohttp 服务器的访问日志中记录请求的其他属性。例如,我有中间件,它user
为每个请求添加属性,我想将此值存储在extra
属性中以用于访问日志记录。文档建议覆盖aiohttp.helpers.AccessLogger
确实似乎是一个好的开始,但是接下来我该怎么做,我应该将自定义记录器的实例放在哪里?我查看了代码,看起来这在应用程序创建阶段是不可能的,而是在应用程序运行时。但是我正在使用不同的方法运行应用程序,因此在多个地方修改启动并不那么方便(例如,我在本地使用aiohttp-devtools runserver
和 gunicorn 进行部署)。
那么这里应该有什么正确的方法呢?(我也想对错误日志做同样的事情,但这似乎更复杂,所以现在我只是使用另一个中间件来捕获错误并创建我需要的日志记录)。
解决方案
考虑到开发日志配置通常与生产日志配置非常不同,因此保留两种不同的方法gunicorn
并且aiohttp-devtools
完全没问题。
对于开发服务器,您可能需要在控制台上记录所有内容,登台和生产以不同方式写入日志。
推荐阅读
- python - Pandas read_csv 不会在逗号后分隔值
- c - 如何重命名C中的目录?
- python - Pygame从全屏切换到正常不起作用
- pandas - 如何在不使用 groupby() 函数的情况下对数据帧的行进行分组?
- javafx - 调用方法 javaFX 时控制器之间的空指针异常
- excel - VBScript 使有关外部数据源的 Excel 警告对话框变暗?
- python - 在 python 中使用 json_normalize 将嵌套的 json 转换为数据帧
- php - PHP按自定义顺序排序
- r - 刷机更新后出现问题?
- python - 在python中保存多个变量