国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python中 logging的使用詳解

2020-02-16 10:27:57
字體:
來源:轉載
供稿:網友

日志是用來記錄程序在運行過程中發生的狀況,在程序開發過程中添加日志模塊能夠幫助我們了解程序運行過程中發生了哪些事件,這些事件也有輕重之分。

根據事件的輕重可分為以下幾個級別:

DEBUG: 詳細信息,通常僅在診斷問題時才受到關注。整數level=10

INFO: 確認程序按預期工作。整數level=20

WARNING:出現了異常,但是不影響正常工作.整數level=30

ERROR:由于某些原因,程序 不能執行某些功能。整數level=40

CRITICAL:嚴重的錯誤,導致程序不能運行。整數level=50

默認的級別是WARNING,也就意味著只有級別大于等于的才會被看到,跟蹤日志的方式可以是寫入到文件中,也可以直接輸出到控制臺。

輸出到控制臺

下面是一個小例子通過將日志輸出到控制臺的方法:

import logginglogging.warning('Watch out!') # 將輸出到控制臺logging.info('I told you so') # 不會輸出logging.error("an error occurrence!") #將輸出到控制臺

輸出結果

WARNING:root:Watch out!ERROR:root:an error occurrence

輸出到文件中

新開一個python解釋器,確保不是上面代碼的session

import logginglogging.basicConfig(filename='example.log',level=logging.DEBUG)logging.debug('This message should go to the log file')logging.info('So should this')logging.warning('And this, too')

這個時候控制臺上面就沒有了輸出,文件example.log中的內容

DEBUG:root:This message should go to the log fileINFO:root:So should thisWARNING:root:And this, too

假定需要手動調整日志的級別,我們可以在命令行以參數的形式傳入--log=INFO,在代碼中可以采用下面的處理方式

# 輸入參數 --log=DEBUG or --log=debugnumeric_level = getattr(logging, loglevel.upper(), None)#返回10,否則Noneif not isinstance(numeric_level, int): raise ValueError('Invalid log level: %s' % loglevel)logging.basicConfig(level=numeric_level, ...)

變量的日志

使用格式化字符串的方式,為變量添加日志

import logginglogging.warning('%s before you %s', 'Look', 'leap!')

自定義日志格式

我們還可以根據我們的需求自定義輸出模板

import logginglogging.basicConfig(format='%(asctime)s: %(levelname)s: %(message)s',level=logging.DEBUG)logging.debug('This message should appear on the console')logging.info('So should this')logging.warning('And this, too')

輸出

2017-10-24 14:03:53,671: DEBUG: This message should appear on the console2017-10-24 14:03:53,690: INFO: So should this2017-10-24 14:03:53,694: WARNING: And this, too

內部實際傳入的為一個字典,%(key)為字典的key。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江都市| 永胜县| 杨浦区| 贺州市| 克拉玛依市| 额济纳旗| 沙田区| 饶阳县| 贺兰县| 凌海市| 郯城县| 连城县| 竹山县| 沙湾县| 本溪市| 东乡县| 崇礼县| 缙云县| 铜山县| 浦城县| 驻马店市| 屏山县| 洛宁县| 遂川县| 科技| 留坝县| 萍乡市| 石林| 辽阳县| 黎平县| 咸宁市| 岳普湖县| 阿尔山市| 天水市| 青冈县| 仙桃市| 古浪县| 娄烦县| 尼玛县| 吉安县| 黔东|