flask日誌使用

2021-09-28 10:52:35 字數 1862 閱讀 9996

from flask import flask, request

import logging

# 設定日誌輸出到檔案中,而不是顯示到網頁

'propagate_exceptions']=

false

class

requestformatter

(logging.formatter)

:# 自定義日誌格式化類,實現自定義的日誌資訊

defformat

(self, record)

:'''每次生產日誌時都會呼叫,用於生成自定義的日誌資訊'''

try:

record.url = request.url

record.remote_addr = request.remote_addr

except

: record.url =

'null'

record.remote_addr =

'null'

finally

:return

super()

.format

(record)

defcreate_logger()

:)# 使用檔名

# 設定日誌級別

'debug'

)# 2.設定日誌處理器,控制台輸出

console_log_handler = logging.streamhandler(

)# 3.設定日誌格式

console_log_formatter = logging.formatter(fmt=

'%(name)s %(levelname)s %(pathname)s %(lineno)d %(message)s'

) console_log_handler.setformatter(console_log_formatter)

# 4.新增日誌

# 建立轉存檔案處理器

from logging.handlers import rotatingfilehandler

file_log_handler = rotatingfilehandler(filename=

'flask.log'

, maxbytes=

100*

1024

*1024

, backupcount=10)

# 迴圈儲存

# 設定檔案日誌的格式

# 增加format的自定義後,需要用自定義的類requestformatter

file_log_formatter = requestformatter(fmt=

'[%(asctime)s] %(name)s %(levelname)s %(remote_addr)s requested %(url)s %(pathname)s %(lineno)d %(message)s'

) file_log_handler.setformatter(file_log_formatter)

# 單獨設定檔案日誌的級別

file_log_handler.setlevel(

'error'

)# 新增日誌

'/')

defindex()

:# a = 1 / 0

"this is a error log"

)return

'index'

if __name__ ==

'__main__'

: create_logger(

)true

, host=

'0.0.0.0'

, port=

8000

)

flask中logger日誌的使用

日誌是乙個正規系統都應該有的功能,否則當執行良好的系統突然無法正常運轉的時候,你就會束手無策,而有了日誌,你就可以通過日誌檢視其中緣由,從而解決問題。1.python中使用logger非常簡單,可以直接使用 2.我們可以通過設定logger的存貯方式,比如寫入檔案 import logging ha...

Flask 日誌記錄

最近專案需要用到flask日誌模組來記錄日誌,這裡做下記錄 from flask import flask import logging 匯入日誌模組 日誌系統配置 設定日誌檔案,和字元編碼 logging format logging.formatter asctime s levelname s...

Flask自學日誌

flask是使用python編寫的web微框架。web框架可以讓我們不用關心底層的請求響應處理,更方便高效地編寫web程式。因為flask核心簡單且易於擴充套件,所以被稱作微框架 micro framework flask有兩個主要依賴,乙個是wsgi web server gateway inte...