1
有時在生產過程中,可能會遇到一些錯誤,例如Flask引發異常。其中一個解決方案是使用logging.exception
來記錄異常。但重現問題還不夠。燒瓶 - 轉儲異常以便稍後調試
如果我們可以將異常轉儲到文件中以稍後調試以探索對象,那將會很不錯。做python能夠做到這一點?核心轉儲之類的東西?
有時在生產過程中,可能會遇到一些錯誤,例如Flask引發異常。其中一個解決方案是使用logging.exception
來記錄異常。但重現問題還不夠。燒瓶 - 轉儲異常以便稍後調試
如果我們可以將異常轉儲到文件中以稍後調試以探索對象,那將會很不錯。做python能夠做到這一點?核心轉儲之類的東西?
如果發生異常,可以將完整的堆棧跟蹤保存到文件中。 您可以爲您的應用程序實例創建一個函數來記錄異常。在這個例子中,你的應用程序或sqllachemy包中的所有異常都將記錄在「sample.log」文件中。
def log(app):
import logging
from logging.handlers import RotatingFileHandler
from logging import getLogger
logging._defaultFormatter = logging.Formatter(u"%(message)s")
file_handler.setLevel(logging.ERROR)
file_handler = RotatingFileHandler("sample.log", maxBytes=1024*1024*10, backupCount=100)
loggers = [app.logger, getLogger('sqlalchemy')]
for logger in loggers:
logger.addHandler(file_handler)
在應用程序的初始化腳本創建應用程序實例只是 調用創建功能
log(app)
後