我想將「werkzeug」輸出存儲在一個文件中(或創建一個類似的日誌文件),並將其他數據添加到每行日誌。 (例如,如果該值在會話中已知,則爲用戶名的值)燒瓶 - 如何存儲日誌並添加其他信息
如何繼續?如果用戶名在會話中未知,我希望用戶爲「未知」。
是否有可能在做app.run()之前定義所有內容?
class UserIDFilter(logging.Filter):
"""
This is a filter which injects contextual information into the log.
"""
from flask import session
def filter(self, record):
username = session.get('username','unknown')
record.user_id = username
return True
logFormatStr = '%(asctime)s - %(levelname)s - %(message)s'
logging.basicConfig(filename='output.log',format = logFormatStr, level=logging.DEBUG)
app.run(debug=True)
我對app.run問題是瞭解該計劃將如何能夠獲得(因爲我沒有嘗試使用app.run會議收到的對象時遇到了錯誤的要求方面的工作外「)訪問會話中存儲的用戶值。 (我想也許我必須在定義日誌記錄之前啓動「app.run」)。
對於我來說,最好的答案是用戶名存儲在會話和日誌文件中的Hello World示例(類似於werkzeug)添加了這些信息。
感謝您的回答,我已經檢查了文檔,但我無法弄清楚如何在沒有「basicConfig」或在格式字符串中添加內容的情況下使其工作。在此先感謝您的幫助:) – DavidK
我只是想在日誌中添加一個用戶名(在會話變量中定義的用戶名),我想了解如何。當我沒有basicConfig時,我的日誌文件中沒有任何內容。 – DavidK
@DavidK更新了答案,是你想要的嗎? –