导语:
本文主要介绍了关于python怎么记录日志的相关知识,包括python 日志模块,以及python打印日志信息这些编程知识,希望对大家有参考作用。
这篇文章介绍了 Python 的 logging 模块。
为什么使用 logging 模块?
有的开发者可能会问,为什么不用简单的打印语句呢? Logging 模块有很多优点,包括:
多线程支持
通过不同级别的日志分类
灵活性和可配置性
将如何记录日志与记录什么内容分离
最后但并非最不重要的一点是,将我们录制的内容与我们录制的方式真正分开,可以让软件的不同部分协同工作。例如,它允许框架或库开发人员添加日志记录,并让系统管理员或负责运行配置的人员决定以后应该记录什么。
使用起来还是很方便的。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import logging
# create a log file
logger = logging.getLogger('atp_log')
logger.setLevel(logging.DEBUG)
# create a handler, write the log info into it
fh = logging.FileHandler('atp.log')
fh.setLevel(logging.DEBUG)
# create another handler output the log though console
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
# 定义handler的输出格式
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
ch.setFormatter(formatter)
# 给logger添加handler
logger.addHandler(fh)
logger.addHandler(ch)
# 记录一条日志
logger.info('foorbar')
logger.error('foorbar')
之后,我们的 team logger 可以输入警告或错误信息,并将其记录在日志文件中。当然,在上面的代码中,我们在设置
fh = logging.FileHandler('atp.log')
该文件的记录器还创建了一个显示来自控制台的日志的位置。
ch = logging.StreamHandler()
之后我们可以看到在文件和控制台中会有相应的信息。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在python中表示换行符09/07
- ♥ python是什么语言09/07
- ♥ 如何添加新的python模块09/29
- ♥ Python中deque的操作安排11/22
- ♥ 谷歌工程师开源:Python 调试神器 Cyberbrain02/06
- ♥ 什么是 python psutil01/01
内容反馈