fh = logging.FileHandler('example.log',delay = True)
fh.setLevel(logging.INFO)
由于delay为True,除非记录了一些内容,否则永远不会写入文件。 此时,文件中的第一行是第一条记录,它将包含asctime、levelname等元素
使用Python2.7.10,有没有一种方法可以在第一次写入不包含这些元素的记录时添加一行(或两行)?在
我可以在使用该文件进行日志记录之前先写入该文件,但如果我这样做,则日志将为空,但头文件除外。在
所需的输出可能如下所示:
^{pr2}$谢谢
将FileHandler子类化以创建您自己的自定义FileHandleWithHeader,如下所示:
这个脚本应该像Python2.7中那样运行。如果示例.log“文件已存在,它不会重新创建头。在
此解决方案需要了解找到的日志源代码here 和一般使用python日志包找到here。在
我有个简单的想法。下面只使用一个自定义格式化程序。第一个格式化的消息会输出一个头记录,然后在这之后执行正常的格式化。在
相关问题 更多 >
编程相关推荐