Python写日志文件
Python 写日志文件
日志文件是记录程序操作及事件的记录文件或记录文件的集合。一般由程序开发人员编写,开发、运维人员共同使用,开发人员可以通过日志调试程序,运维人员通过日志检查程序近期是否正常运行,如果出现异常,则可通过日志快速定位问题。因此,用日志记录程序流程,事件,以及异常时的详细信息非常重要,尤其是对于部署在客户场地的程序。另外,日志有时也用于记录用户操作、程序运行地理位置等跟踪信息,用于后台的用户研究和数据挖掘。
日志文件需要详细、清晰、且具有高可读性,以便减少开发与运维人员后期的沟通成本,有时候我们也使用程序来检测和分析日志,因此,定义关键字和格式也很重要。
Python 使用 logging 工具管理日志,日志可以在终端显示,也可以记录成文件,每条日志都用级别号标志其严重程度,一般通过级别过滤选择性地记录和显示日志,级别定义如表 5-1 所示:
(谢彦技术博客)
本例展示了以屏幕输出和文件输出两种方式记录日志信息,日志文件为当前目录下的 log.txt,格式为文本文件。例程中设置了三次日志级别,第一次对程序中所有日志设置,级别为 DEBUG,即显示全部日志,第二次设置日志文件的级别为 INFO,它将 INFO 及 INFO 以上的日志记录在文件中,第三次是设置屏幕显示日志级别为 WARNING,相当于先用第一次设置的 DEBUG 过滤一遍,再用 WARNING 过滤一遍,最终输出的是 WARNING 及以上的日志信息。
1 | import logging |
(谢彦技术博客)
需要注意的是程序用 addHandler 函数添加了两个句柄,一个用来显示输出,一个用来记录日志文件,之后输出的 log 信息会通过句柄调用对应的输出,同一个输出如果 addHandler 多次,又没有 removeHandler,同一条日志就会被记录多次。因此注意不要重复调用,尤其在用 Jupyter Notebook 调试时,不要重复运行该代码段。
转载请注明出处:https://www.jianshu.com/p/10d81d4fb050