python對logging日誌封裝

2021-10-23 07:37:15 字數 1986 閱讀 8900

#日誌類

class

mylog()

: @classmethod

defmy_log

(cls,msg,level)

: my_logger = logging.getlogger(

'python11'

)# 設定日誌級別

my_logger.setlevel(logging.debug)

# 設定輸出格式

formatter = logging.formatter(

'%(asctime)s-%(levelname)s-%(filename)s-%(name)s-日誌資訊:%(message)s'

)# 建立乙個handler,用於輸出到控制台

ch = logging.streamhandler(

) ch.setlevel(logging.debug)

ch.setformatter(formatter)

fh = logging.filehandler(

'loggg.txt'

, encoding=

'utf-8'

) fh.setlevel(logging.debug)

fh.setformatter(formatter)

# 設定輸出格式

# 兩者對接--指定輸出渠道

my_logger.addhandler(ch)

my_logger.addhandler(fh)

# 收集日誌

if level ==

'debug'

: my_logger.debug(msg)

elif level ==

'info'

: my_logger.info(msg)

elif level ==

'warning'

: my_logger.warning(msg)

elif level ==

'error'

: my_logger.error(msg)

elif level ==

'critical'

: my_logger.critical(msg)

# 關閉日誌收集器

my_logger.removehandler(ch)

my_logger.removehandler(fh)

@classmethod

defdebug

(cls,msg)

: cls.my_log(msg,

'debug'

) @classmethod

definfo

(cls, msg)

: cls.my_log(msg,

'info'

) @classmethod

defwarning

(cls, msg)

: cls.my_log(msg,

'warning'

) @classmethod

deferror

(cls, msg)

: cls.my_log(msg,

'error'

) @classmethod

defcritical

(cls, msg)

: cls.my_log(msg,

'critical'

)if __name__ ==

'__main__'

: mylog.error(

'error',)

mylog.warning(

'warning',)

mylog.critical(

'critical'

,)

Python模組 logging模組列印日誌

python模組 logging 一 簡單日誌列印 直接使用logging模組,列印日誌到螢幕 預設輸出日誌的格式 日誌級別 logger名稱 使用者輸出訊息 預設的日誌級別設定為warning,logging模組將日誌列印到標準輸出中,且只顯示大於等於warning級別的日誌 日誌級別等級crit...

使用python內建模組logging日誌處理

import logging from logging import handlers ch logging.filehandler 自定義日誌檔案路徑名 encoding utf 8 utf 8是為了解決日誌檔案中的亂碼.常用於自己練習,正式開發用下面的方式。sh logging.streamha...

python 如何對logging日誌封裝

作者 做夢的人 小姐姐 出處 因為最近在做平台,發現有同事,使用django封裝了日誌模組,看樣子很簡單,準備自己單獨做了乙個日誌封裝模板,對於python不熟練的我,封裝部分參考了多個博主的內容,形成自己的日誌模組,內容如下 封裝部分 建立乙個logutil2的py檔案 usr bin env p...