為了在控制台規範的列印
import logging
# 日誌配置
logging.basicconfig(level=logging.info, format='[%(asctime)s] - %(levelname)s in %(filename)s: %(message)s')
# 獲取日誌器
logger = logging.getlogger(__name__)
寫入檔案的日誌配置。
1. 旋轉日誌配置
寫入檔案,並且可以規定最大大小,自動滾動刪除日誌。
from logging.handlers import rotatingfilehandler
import logging
# handler類,旋轉檔案日誌,日誌檔名,100mb,10個檔案滾動
handler = rotatingfilehandler(filename='logs.log', maxbytes=100 * 1024 * 1024, backupcount=10)
# formatter類
formatter = logging.formatter('[%(asctime)s] - %(levelname)s in %(filename)s: %(message)s')
handler.setformatter(formatter) # 新增格式化例項
# 獲取日誌器
logger = logging.getlogger(__name__)
logger.addhandler(handler)
logger.setlevel(logging.info) # 設定告警等級
2. 控制台列印日誌
可以同時寫檔案也在控制台列印,主要是看選擇哪些handler。
console = logging.streamhandler()
logger.addhandler(console) # 額外新增乙個handler
import logging
from scrapy.utils.log import configure_logging
configure_logging(install_root_handler=false)
logging.basicconfig(
filename='scrapy_log.txt',
format='%(levelname)s: %(message)s',
level=logging.info
)
等級依次增高
logging.debug('debug message')
logging.info('info message')
logging.warn('warn message')
logging.error('error message')
logging.critical('critical message')
import logging
import os
from logging.handlers import rotatingfilehandler
# 日誌路徑
log_path = 'log/'
# 日誌等級
log_level =
def set_logger(log_name, level):
"""設定並返回日誌器
:param log_name:
:param level:
:return:
"""if not os.path.exists(log_path):
os.makedirs(log_path)
# handler類,旋轉檔案日誌,日誌檔名,100mb,5個檔案滾動
handler = rotatingfilehandler(filename=log_path + '{}.log'.format(log_name), maxbytes=300 * 1024 * 1024,
backupcount=5, encoding='utf-8')
# formatter類
formatter = logging.formatter('[%(asctime)s] - %(levelname)s in %(filename)s %(funcname)s: %(message)s')
handler.setformatter(formatter) # 新增格式化例項
# 獲取日誌器
logger = logging.getlogger(log_name)
logger.addhandler(handler)
logger.setlevel(log_level.get(level, logging.info)) # 設定告警等級
return logger
PythonStudy 日誌模組 logging
日誌 日之石日常的流水,將程式執行過程中的狀態或資料盡心記錄,一般是記錄到日誌檔案當中的。在正常的專案之中,專案的執行的一些列印資訊,採用logging列印到檔案當中,這個過程就稱作為 日誌記錄模組 以下為預設的操作日誌模組 匯入日誌模組 import logging logging為預設列印者,是...
python日誌模組
logging.debug 10 logging.info 20 logging.warning 30 logging.error 40 logging.critical 50預設級別為warning 預設輸出位置為控制台 import logging logging.basicconfig 可用引...
python 日誌模組
在軟體或者系統發生錯誤時可以通過日誌快速定位到錯誤,從而定位問題,解決問題。logging模組提供的日誌記錄函式所使用的日誌器設定的日誌級別是warning,因此只有warning級別的日誌記錄以及大於它的error和critical級別的日誌記錄被輸出了,而小於它的debug和info級別的日誌記...