博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
多个模块使用python logging
阅读量:4676 次
发布时间:2019-06-09

本文共 2678 字,大约阅读时间需要 8 分钟。

链接:

具体的使用方法,请参考如下代码:

import loggingimport auxiliary_module# create logger with 'spam_application'logger = logging.getLogger('spam_application')logger.setLevel(logging.DEBUG)# create file handler which logs even debug messagesfh = logging.FileHandler('spam.log')fh.setLevel(logging.DEBUG)# create console handler with a higher log levelch = logging.StreamHandler()ch.setLevel(logging.ERROR)# create formatter and add it to the handlersformatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')fh.setFormatter(formatter)ch.setFormatter(formatter)# add the handlers to the loggerlogger.addHandler(fh)logger.addHandler(ch)logger.info('creating an instance of auxiliary_module.Auxiliary')a = auxiliary_module.Auxiliary()logger.info('created an instance of auxiliary_module.Auxiliary')logger.info('calling auxiliary_module.Auxiliary.do_something')a.do_something()logger.info('finished auxiliary_module.Auxiliary.do_something')logger.info('calling auxiliary_module.some_function()')auxiliary_module.some_function()logger.info('done with auxiliary_module.some_function()')

Here is the auxiliary module:

import logging# create loggermodule_logger = logging.getLogger('spam_application.auxiliary')class Auxiliary:    def __init__(self):        self.logger = logging.getLogger('spam_application.auxiliary.Auxiliary')        self.logger.info('creating an instance of Auxiliary')    def do_something(self):        self.logger.info('doing something')        a = 1 + 1        self.logger.info('done doing something')def some_function():    module_logger.info('received a call to "some_function"')

The output looks like this:

2005-03-23 23:47:11,663 - spam_application - INFO -   creating an instance of auxiliary_module.Auxiliary2005-03-23 23:47:11,665 - spam_application.auxiliary.Auxiliary - INFO -   creating an instance of Auxiliary2005-03-23 23:47:11,665 - spam_application - INFO -   created an instance of auxiliary_module.Auxiliary2005-03-23 23:47:11,668 - spam_application - INFO -   calling auxiliary_module.Auxiliary.do_something2005-03-23 23:47:11,668 - spam_application.auxiliary.Auxiliary - INFO -   doing something2005-03-23 23:47:11,669 - spam_application.auxiliary.Auxiliary - INFO -   done doing something2005-03-23 23:47:11,670 - spam_application - INFO -   finished auxiliary_module.Auxiliary.do_something2005-03-23 23:47:11,671 - spam_application - INFO -   calling auxiliary_module.some_function()2005-03-23 23:47:11,672 - spam_application.auxiliary - INFO -   received a call to 'some_function'2005-03-23 23:47:11,673 - spam_application - INFO -   done with auxiliary_module.some_function()

 

转载于:https://www.cnblogs.com/boluo007/p/10112443.html

你可能感兴趣的文章
位反转的最佳算法
查看>>
常用面试问题
查看>>
第一个爬虫
查看>>
Java面试知识点之Java基础
查看>>
老外的前端面试题
查看>>
架构:新浪架构师谈微博架构
查看>>
SQL 语句速查
查看>>
女孩·有义务让男孩走向成熟,·男孩·有责任让女孩学着长大(精简版)
查看>>
discuz 删除指定条件的资讯
查看>>
Android上下文菜单ContextMenu
查看>>
JavaScript Number 对象 Javascript Array对象 Location 对象方法 String对象方法
查看>>
Python & Django 学习笔记
查看>>
python第四天练习题
查看>>
【bzoj4543】Hotel加强版(thr)
查看>>
没有标题(1)
查看>>
React-Native学习手册----搭建基于ios平台的开发环境
查看>>
Android手机 Fildder真机抓包
查看>>
[stm32] 中断
查看>>
L1-043 阅览室
查看>>
我大学时代的好朋友要结婚了!
查看>>