python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > logging日志打印

Python中的logging模块实现日志打印

作者:严小样儿

这篇文章主要介绍了Python中的logging模块实现日志打印,其实不止print打印日志方便排查问题,Python自带的logging模块,也可以很简单就能实现日志的配置和打印,下面来看看具体的实现过程吧,需要的朋友可以参考一下

前言:

大家在写代码的时候,经常会使用print打印日志方便排查问题,然而print的问题就是太过简单,缺少时间、日志级别等格式化信息。

Python自带的logging模块,很简单就能实现日志的配置和打印,它有两种用法,方法1是把日志输出到标准输出,其实就是命令行界面,方法2则是输出日志到文件,更加方便。

方法1:配置并输出日志到标准输出

import logging
 
LOG_FORMAT = "%(asctime)s - %(levelname)s - %(message)s"
logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT)
 
 
logging.info("清空重建表")

当执行程序,就会输出:

2021-01-24 10:43:37,883 - INFO - 清空重建表

比自己用print要好用一些了。

方法2:配置输出到日志文件

import logging
import logging.handlers
import os
 
 
LOG_FILE = "test_log.log"
logging.basicConfig(filename=LOG_FILE,
                    filemode="w",
                    format="[%(levelname)s] %(asctime)s [%(filename)s:%(lineno)d, %(funcName)s] %(message)s",
                    level=logging.INFO)
time_hdls = logging.handlers.TimedRotatingFileHandler(LOG_FILE, when='D', interval=1, backupCount=7)
logging.getLogger().addHandler(time_hdls)

 
logging.info("hello world")

然后,我们会发现有这个表现:

[INFO] 2021-03-29 22:19:46,753 [testlog.py:14, <module>] hello world
hello world

真正的线上服务,是会这样来配置日志的,方便、强大。

到此这篇关于Python中的logging模块实现日志打印的文章就介绍到这了,更多相关logging日志打印内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文