在python中,日誌記錄顯示有兩種方式,一種是儲存在檔案和列印螢幕上,一種儲存在檔案中。
第一種,直接儲存在檔案中。
1 import logging #日誌模組,方便記錄日誌 2 3 # 下面是配置日誌記錄格式 4 logging.basicConfig(level=logging.DEBUG, #(DEBUG這個可以換成其他級別,如WARNING,ERROR等) 5 format=` %(asctime)s >> %(filename)s >> line: %(lineno)d >> %(levelname)s >> %(message)s `, 6 datefmt=`%Y_%m_%d %H:%M:%S`, 7 filename=`test.log`, 8 filemode=`a` 9 ) #這個w執行時,會把原有的內容清空,記錄記錄肯定是要保留所有記錄,所以把w換成a,就可以增加內容 10 11 # 如下為錯誤級別,依次級別增高 12 logging.debug(`debug message11,1223`) 13 logging.info(`info message22`) 14 logging.warning(`warning message22`) 15 logging.error(`error message33`) 16 logging.critical(`critical message44`)
第二種,同時儲存在檔案和列印輸出
1 import logging 2 3 4 logger = logging.getLogger() 5 6 #建立一個handler,用於寫入日誌檔案 7 fh = logging.FileHandler(`test.log`,`a`) 8 #再建立一個handler,用於輸出到螢幕 9 ch = logging.StreamHandler() 10 11 12 formt=logging.Formatter(`%(asctime)s_%(filename)s_%(levelname)s_%(message)s`) 13 14 15 16 fh.setFormatter(formatter) 17 ch.setFormatter(formatter) 18 19 20 logger.addHandler(fh) 21 logger.addHandler(ch) 22 23 24 25 26 logger.setLevel(logging.DEBUG) 27 28 29 30 logger.debug(`debug message11`) 31 logger.info(`info message22`) 32 logger.warning(`warning message33`) 33 logger.error(`error message44`) 34 logger.critical(`critical message55`)