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("清空重建表")
當執(zhí)行程序,就會輸出:
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")
然后,我們會發(fā)現有這個表現:
- 1、多了一個文件,叫做test_log.log;
- 2、文件中是這樣的內容,信息更加豐富:
[INFO] 2021-03-29 22:19:46,753 [testlog.py:14, <module>] hello world hello world
- 3、這個日志文件,會每天備份一個文件,并且只保留7天的日志;
真正的線上服務,是會這樣來配置日志的,方便、強大。
到此這篇關于Python中的logging模塊實現日志打印的文章就介紹到這了,更多相關logging日志打印內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解決Scrapy安裝錯誤:Microsoft Visual C++ 14.0 is required...
下面小編就為大家?guī)硪黄鉀QScrapy安裝錯誤:Microsoft Visual C++ 14.0 is required...的問題。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10