在程式異常中記錄堆疊資訊

2021-08-23 12:58:25 字數 684 閱讀 5320

在我們編寫程式的時候可通過ide自帶的除錯環境捕捉到異常(except)錯誤,並能檢視到相關的資訊以便我們修正程式中的問題。但當軟體被發布出去後,因為所部署執行的環境與我們的除錯環境有很大區別,即使在是除錯環境中測試過非常完美的程式,也很難保證在實際執行中不出現任何錯誤。當程式發生錯誤它往往是丟擲乙個紅叉的警告框來告訴我們它出錯了,但這對我們來說卻像是乙個不懂表達的小孩,只是一味的告訴你它身上疼,卻不懂得告訴你它**疼、怎麼樣疼。幸好有乙個叫exwatcher的元件能夠教會你的小孩怎麼說出它身上的疼痛。

有關exwatcher的實現原理請參見以下文章:

advanced exception handler to find the exception source file name, call stack and all other related information

advanced exception handler to find the exception source, call stack and more

要生成dbg檔案,需乙個小工具map2dbg,它能夠將dephi的map檔案轉換成dbg格式檔案,要生成map檔案請修改project -> options -> linker -> map file 選擇detailed,或者在需要的地方加入編譯指令 。

生成不了map時,請刪除dproj檔案後,用ide開啟dpr,由ide重建dproj。

錯誤堆疊資訊記錄錯誤日誌

任何 執行前都需要考慮 bug,當出現錯誤資訊時需要展示其錯誤資訊 def f1 result 123int asdf 故意設定乙個錯誤的 源 return result defrun try ret f1 print ret except exception as e print e run vi...

python異常資訊堆疊輸出到日誌檔案

coding utf 8 import logging from logging import handlers from datetime import datetime import time import ccxt import math import pymysql import trace...

在開發時期記錄程式異常(並將其儲存在文字中)

using system using system.collections.generic using system.linq using system.text using system.data.sqlclient using system.data namespace datalibrary....