十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要为大家展示了“python中logging日志打印的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python中logging日志打印的示例分析”这篇文章吧。
创新互联是专业的保定网站建设公司,保定接单;提供网站建设、成都网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行保定网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!一、 基础使用
1.1 logging使用场景
日志是什么?这个不用多解释。百分之九十的程序都需要提供日志功能。Python内置的logging模块,为我们提供了现成的高效好用的日志解决方案。但是,不是所有的场景都需要使用logging模块,下面是Python官方推荐的使用方法:
任务场景 | 最佳工具 |
---|---|
普通情况下,在控制台显示输出 | print() |
报告正常程序操作过程中发生的事件 | logging.info()(或者更详细的logging.debug()) |
发出有关特定事件的警告 | warnings.warn()或者logging.warning() |
报告错误 | 弹出异常 |
在不引发异常的情况下报告错误 | logging.error(), logging.exception()或者logging.critical() |
logging模块定义了下表所示的日志级别,按事件严重程度由低到高排列(注意是全部大写!因为它们是常量。):
级别 | 级别数值 | 使用时机 |
---|---|---|
DEBUG | 10 | 详细信息,常用于调试。 |
INFO | 20 | 程序正常运行过程中产生的一些信息。 |
WARNING | 30 | 警告用户,虽然程序还在正常工作,但有可能发生错误。 |
ERROR | 40 | 由于更严重的问题,程序已不能执行一些功能了。 |
CRITICAL | 50 | 严重错误,程序已不能继续运行。 |
默认级别是WARNING,表示只有WARING和比WARNING更严重的事件才会被记录到日志内,低级别的信息会被忽略。因此,默认情况下,DEBUG和INFO会被忽略,WARING、ERROR和CRITICAL会被记录。
有多种方法用来处理被跟踪的事件。最简单的方法就是把它们打印到终端控制台上。或者将它们写入一个磁盘文件内。
1.2 简单范例
在什么都不配置和设定的情况下,logging会简单地将日志打印在显示器上,如下例所示:
import logging logging.warning('Watch out!') # 消息会被打印到控制台上 logging.info('I told you so') # 这行不会被打印,因为级别低于默认级别
如果,将上面的代码放在一个脚本里并运行,结果是:
WARNING:root:Watch out!
1.3 高级使用
import logging #创建logger记录器 logging.basicConfig(filename='example.log',level=logging.DEBUG) logger = logging.getLogger('simple_example') logger.setLevel(logging.DEBUG) #创建一个控制台处理器,并将日志级别设置为debug ch = logging.StreamHandler() ch.setLevel(logging.DEBUG) #创建formatter格式化器 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') #将formatter 添加到ch处理器 ch.setFormatter(formatter) #将ch添加到logger logger.addHandler(ch) #然后就可以开始使用了 # logger.debug('debug message') #logger.info('info message') # logger.warning('warn message') # logger.error('error message') # logger.critical('critical message') def Logss(): #要打印的信息 a = "3" logger.info(a) Logss()
以上是“python中logging日志打印的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!