您好,登錄后才能下訂單哦!
怎么在python中使用logging模塊書寫日志?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
書寫錯誤日志(ERROR級別)和運行日志
import logging,datetime,logging.handlers from conf import settings if __name__ == "__main__": #兩個日志,錯誤日志和運行日志,輸出文件路徑及文件名 error_log = settings.ERROR_LOG_FILE run_log = settings.RUN_LOG_FILE logger = logging.getLogger("mylog") logger.setLevel(logging.DEBUG) DATE_FORMAT = "%Y-%m-%d %H:%M:%S %p" LOG_FORMAT = "%(asctime)s------%(levelname)s[:%(lineno)d]-------%(message)s" #第一種普通寫法 #file_run_log = logging.FileHandler(run_log) #假如需要每日凌晨進行日志切割,注意導入模塊時需要導入logging.handlers,否則報錯 #when參數可以設置S M H D,分別是秒、分、小時、天分割,也可以按周幾分割,也可以凌晨分割 file_run_log = rf_handler = logging.handlers.TimedRotatingFileHandler(run_log, when='midnight', interval=1, backupCount=7, atTime=datetime.time(0, 0, 0, 0)) file_error_log = logging.FileHandler(error_log) file_run_log.setLevel(level=logging.INFO) file_run_log.setFormatter(logging.Formatter(LOG_FORMAT)) file_error_log.setLevel(level=logging.ERROR) file_error_log.setFormatter(logging.Formatter(LOG_FORMAT)) logger.addHandler(file_run_log) logger.addHandler(file_error_log) logger.info("info test") logger.error("error test") logger.critical("critical test") #普通全局寫法 # logging.basicConfig(level=logging.DEBUG,filename=run_log,format=LOG_FORMAT,datefmt=DATE_FORMAT) # logging.info("this is a log") # logging.warning("this is warning")
settings.py:
ERROR_LOG_FILE = os.path.join(BASE_DIR,"log","error.log") RUN_LOG_FILE = os.path.join(BASE_DIR,"log","run.log")
日志輸出結果run.log:
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。