前言:
- 想要让开发过程或者是上线后的bug无处可藏,最好的方式便是在程序运行过程中,不断收集重要的日志,以供分析使用。Python中内置的log收集模块是logging,该模块使用起来比较方便,但是美中不足的地方就是日志的格式转成json比较麻烦。于是我结合logging和另一个模块python-json-logger(pip install python-json-logger) ,实现json格式的日志输出。
源码:以下代码可以做成模块,直接导入使用
1 | import logging, logging.config, os |
### 测试结果
- 测试的结果,可以在./log/xxx.log文件中看到输出的日志
1 | {"asctime": "2018-09-28 09:52:12,622", "threadName": "MainThread", "thread": 4338656704, "name": "proxyCheck", "levelname": "ERROR", "%(lineno": null, "module": "mylog", "funcName": "test", "message": "division by zero"} |
- 可以看到日志是json格式,这样你就可以很方便的使用grafna和ES将日志做成看板来展示了。