# -*- coding: utf-8 -*-import os
import time
import logging
import sys
log_dir1=os.path.join(os.path.dirname(os.path.dirname(__file__)),"logs")
today = time.strftime('%y%m%d', time.localtime(time.time()))
full_path=os.path.join(log_dir1,today)
if not os.path.exists(full_path):
os.makedirs(full_path)
log_path=os.path.join(full_path,"weibo.log")
def get_logger():
# 獲取logger例項,如果引數為空則返回root logger
logger = logging.getlogger("weibo")
if not logger.handlers:
# 指定logger輸出格式
formatter = logging.formatter('%(asctime)s %(levelname)-8s: %(message)s')
# 檔案日誌
file_handler = logging.filehandler(log_path,encoding="utf8")
file_handler.setformatter(formatter) # 可以通過setformatter指定輸出格式
# 控制台日誌
console_handler = logging.streamhandler(sys.stdout)
console_handler.formatter = formatter # 也可以直接給formatter賦值
# 為logger新增的日誌處理器
logger.addhandler(file_handler)
logger.addhandler(console_handler)
# 指定日誌的最低輸出級別,預設為warn級別
logger.setlevel(logging.info)
# 新增下面一句,在記錄日誌之後移除控制代碼
return logger
Logging模組的使用
logging模組,針對日誌操作的模組 logging模組可替代print函式的功能,並能將標準輸出輸入到日誌檔案儲存起來 且利用logging模組可部分替代debug功能 logging模組中有6個級別,分別是 notset 0debug 10info 20warning 30error 40cr...
使用python的logging模組
一 從乙個使用場景開始 開發乙個日誌系統,既要把日誌輸出到控制台,還要寫入日誌檔案 import logging 建立乙個logger logger logging.getlogger mylogger logger.setlevel logging.debug 建立乙個handler,用於寫入日誌...
logging模組的簡單使用
import logging 建立乙個logger,如果引數為空則返回root logger logger logging.getlogger nick 設定logger日誌等級 logger.setlevel logging.debug 建立handler fh logging.filehandl...