本文来源于对 py2.7.9 docs 中 howto-logging 部分加之源代码的理解。官方文档链接如下,我用的是下载的 pdf 版本,应该是一致的:/2/howto/logging.html
我们不按照文档上由浅入深的讲解顺序,因为就这么点东西不至于有“入”这个动作。
使用 logging 模块记录日志涉及四个主要类,使用官方文档中的概括最为合适:
logger提供了应用程序可以直接使用的接口;
handler将(logger创建的)日志记录发送到合适的目的输出;
filter提供了细度设备来决定输出哪条日志记录;
formatter决定日志记录的最终输出格式。
写 log 的一般顺序为:
一、创建logger:
我们不要通过 logging.Logger 来直接实例化得到 logger,而是需要通过 logging.getLogger(\"name\")来生成 logger 对象。
不是说我们不能实现 Logger 的实例化,而是我们期待的是同一个 name 得到的是同一个 logger,这样多模块之间可以共同使用同一个 logger,getLogger 正是这样的解决方案,它内部使用 loggerDict 字典来维护,可以保证相同的名字作为 key 会得到同一个 logger 对象。我们可以通过实例来验证一下:
Loading...
未加载完,尝试【刷新】or【关闭小说模式】or【关闭广告屏蔽】。
尝试更换【Firefox浏览器】or【Chrome谷歌浏览器】打开多多收藏!
移动流量偶尔打不开,可以切换电信、联通、Wifi。
收藏网址:www.ziyungong.cc
(>人<;)