幾個學習連線:
翻譯(不過是2.3版本的)
另外的乙個人的總結:
最好理解,寫的最好的:
我的學習總結基於
以乙個簡單的日誌系統為例子進行說明:
目標:建立乙個日誌系統,這個日誌系統不僅能把資訊輸出到控制台,還可以輸出到檔案。?1
2345
6789
1011
1213
1415
1617
1819
2021
2223
2425
2627
2829
#import logging包
import
logging
#建立乙個logger
logger
=
logging.getlogger(
''
)
#設定logger的等級,大於等於這個等級的資訊會被輸出,其他會被忽略
logger.setlevel(logging.debug)
#handler是英文翻譯為處理者,用於輸出到不同的地方:stream為控制台,file為檔案
#以下建立的是輸出到檔案的handler,並把等級設為debug
fh
=
logging.filehandler(
'test.log'
)
fh.setlevel(logging.debug)
#以下建立的是輸出到控制台的handler,並把等級設為debug
sh
=
logging.streamhandler()
sh.setlevel(logging.debug)
#下面指定了handler的資訊輸出格式,其中asctime,name,levelname,message都是logging的關鍵字
formatter
=
logging.formatter(
'%(asctime)s - %(name)s - %(levelname)s - %(message)s'
)
fh.setformatter(formatter)
sh.setformatter(formatter)
#把handler加入到logger中,可理解為給處理者在logger中安排了職位
logger.addhandler(fh)
logger.addhandler(sh)
#記錄一條為」hello,arsenal!」的info日誌資訊
logger.info(
'hello,arsenal!'
)
print
(
"process end!"
)
注意:logger.setlevel(lvl)
設定logger的level, level有以下幾個級別:
notset < debug < info < warning < error < critical
如果把looger的級別設定為info, 那麼小於info級別的日誌都不輸出, 大於等於info級別的日誌都輸出
思考題:
執行下面的日誌系統,找出錯誤並改正。?1
2345
6789
1011
1213
1415
1617
1819
20import
logging
logger
=
logging.getlogger(
'lylogger'
)
logger.setlevel(logging.debug)
fh
=
logging.filehandler(
'test.log'
)
fh.setlevel(logging.debug)
sh
=
logging.streamhandler()
sh.setlevel(logging.debug)
formatter
=
logging.formatter(
'%(asctime)s - %(name)s - %(levlename)s - %(message)s'
)
fh.setformatter(formatter)
sh.setformatter(formatter)
logger.addhandler(fh)
logger.addhandler(sh)
logger.info(
'hello,arsenal!'
)
print
(
"process end!"
)
答案:通過檢視錯誤資訊,定位key :levlename,得知關鍵字levelname寫錯了。
Django專案如何正確配置日誌 logging
當django專案正式部署上線後,我們需要設定debug false。這時開發者應怎樣檢查django程式在生產環境執行時有什麼異常或錯誤呢?答案就是日誌 logging 在生產環境中,django預設是不會在伺服器上自動生成log檔案的,即使程式出現error級別的故障也不會通知管理員。本文將教你...
FME如何使用Python?
安裝fme後,在fme的安裝路徑中,找到 fmeobjects 資料夾 c program files fme fmeobjects 在fmeobjects 資料夾中,我們可以看到名為python版本的資料夾,因fme的版本不同,支援的python版本有所差異 以fme 2018 x64為例 選擇需...
python的help函式如何使用
python的help函式如何使用 help函式是python的乙個內建函式,在python基礎知識中介紹過什麼是內建函式,它是python自帶的函式,任何時候都可以被使。help函式能作什麼 怎麼使用help函式檢視python模組學習中函式的用法,和使用help函式時需要注意哪些問題,下面來簡單...