python-logging日誌寫入文件(直接可用,簡單易行,最簡單的輸出寫入文件)

找資料發現都好深入,只是想要一個簡單的日誌記錄,寫入文件而已。。。

代碼入下,logger_config方法配置logger,然後就可以調用logger記錄了

import logging
def logger_config(log_path,logging_name):
    '''
    配置log
    :param log_path: 輸出log路徑
    :param logging_name: 記錄中name,可隨意
    :return:
    '''
    '''
    logger是日誌對象,handler是流處理器,console是控制檯輸出(沒有console也可以,將不會在控制檯輸出,會在日誌文件中輸出)
    '''
    # 獲取logger對象,取名
    logger = logging.getLogger(logging_name)
    # 輸出DEBUG及以上級別的信息,針對所有輸出的第一層過濾
    logger.setLevel(level=logging.DEBUG)
    # 獲取文件日誌句柄並設置日誌級別,第二層過濾
    handler = logging.FileHandler(log_path, encoding='UTF-8')
    handler.setLevel(logging.INFO)
    # 生成並設置文件日誌格式
    formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    handler.setFormatter(formatter)
    # console相當於控制檯輸出,handler文件輸出。獲取流句柄並設置日誌級別,第二層過濾
    console = logging.StreamHandler()
    console.setLevel(logging.DEBUG)
    # 爲logger對象添加句柄
    logger.addHandler(handler)
    logger.addHandler(console)
    return logger

if __name__ == "__main__":
    logger = logger_config(log_path='log.txt', logging_name='據說名字長一點容易被人記住')
    logger.info("info")
    logger.error("error")
    logger.debug("debug")
    logger.warning("warning")
    print('print和logger輸出是有差別的!')

運行上述文件,控制檯:

日誌文件輸出:

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章