Case Study

把長期運行當機收斂為控制碼洩漏調查的案例

把長期運行才出現的當機,透過觀測設計與日誌,收斂為控制碼洩漏調查的案例頁面。

案例概要

本案例處理的是一個 Windows 應用程式,在約一個月連續運行之後才會當機。
重要的動作不是急著猜根因,而是先確定 要有哪些觀測點才能可信地把原因收斂下來

症狀

  • 當機只在長時間運行後才出現
  • 失敗形態無法直接告訴我們問題是記憶體、控制碼,或其他
  • 不可能乾等一個月,必須壓縮重現條件

限制

  • 問題路徑牽涉到相機重連與異常情況下的行為
  • 只靠正常路徑的日誌不夠
  • 必須從時間軸觀察資源的成長,而不只是當機瞬間

觀測到的內容

  • Handle CountPrivate BytesThread Count 等心跳指標
  • 圍繞 session 啟動、重連、關閉等的邊界日誌
  • 意識到 create/open/register 與 close/dispose/unregister 成對關係的生命週期日誌

如何收斂問題

不把它當成模糊的「長期運行當機」,而是圍繞重連與異常路徑壓縮重現。
如此一來,把問題當作 控制碼洩漏調查 來處理就變得非常合理。

如何改善

  • 強化監控,讓成長趨勢在最終當機前就可見
  • 讓所有權邊界在日誌中更易追蹤
  • 整理結果讓未來的異常路徑測試能夠建立其上

本案例連結的服務

本案例連結到針對難以重現的長期運行故障的 故障調查 & 根本原因分析,以及改善產品內部日誌、重連行為與運用可視性的 Windows 應用程式開發

Get in Touch

If this page is close to the situation you are dealing with, please contact us with the current context and what kind of support you need.

Back to Home