20201228-1 一个使用模块logging的程序

技术文章 7个月前 完美者
1,224 0

标签:日期   nbsp   mylog   使用   套接字   文档   span   配置   特定   

import logging 
logging.basicConfig(level=logging.INFO, filename=mylog.log) 
logging.info(Starting program) 
logging.info(Trying to divide 1 by 0) 
print(1/0) 
logging.info(The division succeeded) 
logging.info(Ending program)

运行这个程序时,将生成下面的日志文件(mylog.log): INFO:root:Starting program INFO:root:Trying to divide 1 by 0 

如你所见,试图将1除以0后什么都没有记录下来,因为这种错误将导致程序终止。 这是一种简单的错误,你可根据程序崩溃时打印的异常来跟踪确定问题出在什么地方。
不会导致程序终止、而只是让它行为异常的bug是难查找的, 但通过查看详尽的日志文件也许能够帮助你找出问题 出在什么地方。
这个示例中的日志文件并不是很详细,但通过合理地配置模块logging,可让日志以你希望 的方式运行。下面是几个这样的示例。 ? 记录不同类型的条目(信息、调试信息、警告、自定义类型等)。
默认情况下,只记录警告。(这就是在代码清单中显式地将level设置为logging.INFO的原因所在。) ? 只记录与程序特定部分相关的条目。 ? 记录有关时间、日期等方面的信息。 ? 记录到其他位置,如套接字。 ? 配置日志器,将一些或大部分日志过滤掉,这样无需重写程序就能获得所需的日志信息。模块logging非常复杂,文档中还提供了其他很多相关的信息

 

20201228-1 一个使用模块logging的程序

标签:日期   nbsp   mylog   使用   套接字   文档   span   配置   特定   

原文地址:https://www.cnblogs.com/azxsdcv/p/14201252.html

版权声明:完美者 发表于 2021-01-01 12:41:05。
转载请注明:20201228-1 一个使用模块logging的程序 | 完美导航

暂无评论

暂无评论...