Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中使用'logging'模块的正确方法_Python_Logging - Fatal编程技术网

在Python中使用'logging'模块的正确方法

在Python中使用'logging'模块的正确方法,python,logging,Python,Logging,我正在尝试向代码中添加日志,而不是打印所有内容。我读了很多其他的帖子和文章,比如上面列出的那些,但是我代码中的日志不会打印出来 下面是一个例子: # driver.py import logging logger = logging.getLogger(__name__) logger.setLevel(logging.DEBUG) def main(): logging.debug('This is a simple log') # other code here if

我正在尝试向代码中添加日志,而不是打印所有内容。我读了很多其他的帖子和文章,比如上面列出的那些,但是我代码中的日志不会打印出来

下面是一个例子:

# driver.py
import logging

logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)

def main():
    logging.debug('This is a simple log')
    # other code here


if __name__ == "__main__":
     main()
但我的日志不会打印到标准输出。我做错了什么


另外,如果我想将日志添加到多个文件中,我可以在单独的文件中配置日志吗?例如,在我的driver.py和helper\u funtions.py中导入该文件,这样我就不必重复同样的事情了?

您需要一个StreamHandler

ch = logging.StreamHandler()
logger.add_handler(ch)
日志记录手册提供了大量关于设置StreamHandler以及记录到文件的示例。您甚至可以配置日志的格式,使其看起来和文件的格式不同


在任何其他记录器配置之前添加!没有必要。它通过添加@Klaus建议的logging.basicConfig来工作