第十四章:应用构建模块-logging:报告状态、错误和信息消息-日志系统的组成(应用与库中的日志记录)

14.8 logging:报告状态、错误和信息消息
logging模块定义了一个标准的API,用来报告应用和库的错误及状态信息。由一个标准库模块提供日志API的主要好处在于:所有Python模块都可以参与日志记录,所以应用的日志还可以包含来自第三方模块的消息。

14.8.1 日志系统的组成
日志系统包括4类相互交互的对象。任何一个模块或应用如果希望把某个获得记入日志,都可以使用Logger实例来向日志增加消息。调用日志记录器会创建一个LogRecord,它把信息保存在内存中,直到得到处理。一个Logger可以由多个Handler对象,其被配置为要接收和处理日志记录。Handler使用一个Formatter将日志记录转换为输出信息。

14.8.2 应用与库中的日志记录
应用开发人员和库作者都可以使用logging,不过分别有不同的考虑。
应用开发人员要配置logging模块,将消息定向到适当的输出通道。例如,可以采用不同详细成都记录消息,或者记录到不同的目标。可以把日志消息写入文件,写入HTTP GET/POST位置,通过SMTP写入email邮件,写入通用套接字或采用操作系统特定的日志机制,logging模块中提供了所有这些处理器,但是对于内置类未处理的特殊需求,还可以创建定制的日志目标类。
库开发人员也可以使用logging来完成自己的工作,而且要使用这个模块,需要的工作甚至
更少。只需要为各个上下文分别创建一个日志记录器实例,使用一个适当的名字,然后使用标准级别记录日志。只要库使用logging API,并提供一致命名和级别选择,便可以根据需要配置应用来显示或隐藏库的消息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值