W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
如果你的應(yīng)用在生產(chǎn)模式下運(yùn)行(會在你的服務(wù)器上做),默認(rèn)情況下,你不會看見 任何日志消息。為什么會這樣?Flask 試圖實(shí)現(xiàn)一個(gè)零配置框架。如果沒有配置,日 志會存放在哪?猜測不是個(gè)好主意,因?yàn)樗聹y的位置可能不是一個(gè)用戶有權(quán)創(chuàng)建日 志文件的地方。而且,對于大多數(shù)小型應(yīng)用,不會有人關(guān)注日志。
事實(shí)上,我現(xiàn)在向你保證,如果你給應(yīng)用錯(cuò)誤配置一個(gè)日志文件,你將永遠(yuǎn)不會去看 它,除非在調(diào)試問題時(shí)用戶向你報(bào)告。你需要的應(yīng)是異常發(fā)生時(shí)的郵件,然后你會得 到一個(gè)警報(bào),并做些什么。
Flask 使用 Python 內(nèi)置的日志系統(tǒng),而且它確實(shí)向你發(fā)送你可能需要的錯(cuò)誤郵件。 這里給出你如何配置 Flask 日志記錄器向你發(fā)送報(bào)告異常的郵件:
ADMINS = ['yourname@example.com']
if not app.debug:
import logging
from logging.handlers import SMTPHandler
mail_handler = SMTPHandler('127.0.0.1',
'server-error@example.com',
ADMINS, 'YourApplication Failed')
mail_handler.setLevel(logging.ERROR)
app.logger.addHandler(mail_handler)
那么剛剛發(fā)生了什么?我們創(chuàng)建了一個(gè)新的 SMTPHandler 來用監(jiān)聽 127.0.0.1 的郵件服務(wù)器 向所有的 ADMINS 發(fā)送發(fā)件人為 server-error@example.com ,主題 為 “YourApplication Failed” 的郵件。如果你的郵件服務(wù)器需要憑證,這些功能也 被提供了。詳情請見 SMTPHandler 的文檔。
我們同樣告訴處理程序只發(fā)送錯(cuò)誤和更重要的消息。因?yàn)槲覀兊拇_不想收到警告或是 其它沒用的,每次請求處理都會發(fā)生的日志郵件。
你在生產(chǎn)環(huán)境中運(yùn)行它之前,請參閱 控制日志格式 來向錯(cuò)誤郵件中置放更多的 信息。這會讓你少走彎路。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: