7
我正在使用Python/Flask應用程序並嘗試在json中獲取要格式化的日誌(按行)。在json中格式化Flask應用程序日誌
使用Python,JSON記錄器包,我已經修改了格式爲app.logger如下:
from pythonjsonlogger import jsonlogger
formatter = jsonlogger.JsonFormatter(
'%(asctime) %(levelname) %(module) %(funcName) %(lineno) %(message)')
app.logger.handlers[0].setFormatter(formatter)
可正常工作。傳遞給app.logger
的任何消息在json中都格式正確。
但是,應用程序也會自動記錄所有請求。此信息在標準輸出中顯示如下:
127.0.0.1 - - [19/Jun/2015 12:22:03] "GET /portal/ HTTP/1.1" 200 -
我希望此信息能夠在json中格式化。我一直在尋找負責創建這個輸出沒有成功的記錄器/代碼。
該輸出在哪裏產生? 機制是否改變此記錄信息的格式?
你看到這些日誌可能是從你使用的Web服務器而不是來自你的'wsgi'應用程序。你在使用哪臺服務器? – sirfz
@MartijnPieters你可能是對的,但是'Flask'記錄訪問請求是沒有意義的,因爲它不應該是它的工作 – sirfz
@sirfz:除非它不是。你其實是正確的。 –