Flask使用日志記錄的方式:
1. 初始化flask應用執行個體
在flask中使用logger,需要初始化一個flask的應用
app = Flask(__name__)
2. 調用logger
直接調用logger方法
app.logger.info("my first logging")
這裡記錄的是info級别的日志
3. 檢視結果
運作結果如下:
INFO in Code [D:/xxxxx/flask/Code.py:20]:
my first logging
預設情況下,flask的日志是列印在螢幕上的。不過一般我們是需要在一個檔案裡進行日志記錄的,下面我們來看一下如何設定日志記錄在檔案上。
1. 引用logging
因為flask的日志底層引用的是python的logging,設定需要通過python的logging進行,如下代碼:
import logging
2. 設定logging的路徑
logging.basicConfig(filename="D:\\flaskLog\\log.txt",format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
上面的代碼裡設定了兩個參數,filename設定的是日志的記錄檔案(注意設定檔案夾的權限),後一個參數設定了日志的列印格式。
格式化中的常用參數如下:
%(name)s | Logger的名字 |
%(levelno)s | 數字形式的日志級别 |
%(levelname)s | 文本形式的日志級别 |
%(pathname)s | 調用日志輸出函數的子產品的完整路徑名,可能沒有 |
%(filename)s | 調用日志輸出函數的子產品的檔案名 |
%(module)s | 調用日志輸出函數的子產品名 |
%(funcName)s | 調用日志輸出函數的函數名 |
%(lineno)d | 調用日志輸出函數的語句所在的代碼行 |
%(created)f | 目前時間,用UNIX标準的表示時間的浮 點數表示 |
%(relativeCreated)d | 輸出日志資訊時的,自Logger建立以 來的毫秒數 |
%(asctime)s | 字元串形式的目前時間。預設格式是 “2003-07-08 16:49:45,896”。逗号後面的是毫秒 |
%(thread)d | 線程ID。可能沒有 |
%(threadName)s | 線程名。可能沒有 |
%(process)d | 程序ID。可能沒有 |
%(message)s | 使用者輸出的消息 |
3. 檢視結果
再次運作後,可以看到在我們設定的路徑下的txt檔案中出現了日志記錄

這裡我們看到有一個appLogger,這是日志的名稱,通過logger.name可以設定此名稱,如:
app.logger.name="appLogger"
詳情可參考官方文檔:https://docs.python.org/3/library/logging.html#logger-objects
更多文章關注微信公衆号“挨踢學霸”