應用程式安裝在用戶電腦上,異常處理一直是反覆出現的問題。用戶報障中的描述不足以重現該問題。你不得不猜測,或者只是做猴子測試,以找出其異常出現的根源。 最嚴重的問題是當認為你已經找出了原因並糾正它,但後來您收到新的報障,還是同樣的問題,證明自己只是讓原來的代碼變得更加複雜。 為此您不斷的改進異常日誌 ...
應用程式安裝在用戶電腦上,異常處理一直是反覆出現的問題。用戶報障中的描述不足以重現該問題。你不得不猜測,或者只是做猴子測試,以找出其異常出現的根源。
最嚴重的問題是當認為你已經找出了原因並糾正它,但後來您收到新的報障,還是同樣的問題,證明自己只是讓原來的代碼變得更加複雜。
為此您不斷的改進異常日誌的記錄, 試著不錯過任何一個細節。為什麼拋出異常?到底錯過了哪些信息。OneTrueError 也是在嘗試解決這些問題。它繞過用戶直接向程式員報告異常,詳盡到相關的處理上下文信息。
OneTrueError 包括客戶端 (nuget 程式包) 和伺服器 (IIS web 應用程式)。客戶在您的應用程式,收集異常的上下文信息,並將所有內容上傳到伺服器。
讓我們通過一個簡單的控制台程式報告異常,看看我們得到什麼新鮮玩意。
class Program { static void Main(string[] args) { // 初始化 var url = new Uri("http://localhost/onetrueerror/"); OneTrue.Configuration.Credentials(url, "yourAppKey", "yourSharedSecret"); try { throw new InvalidOperationException("Hello world"); } catch (Exception ex) { OneTrue.Report(ex); } } }
該代碼運行時拋出異常,並將異常信息上傳到伺服器。當打開 OneTrueError 網站,您將看到這樣的場景︰
儀錶盤展示了在 OneTrueError 中配置的所有的應用程式。
Incident(事件) 已被確定為同樣的錯誤的記錄。
Active incidents (活動事件) 未解決或忽略的事件。
Report Count (報告數量) 上傳的錯誤報告
UsersWaiting (等待用戶) 被轉到異常頁面並輸入了郵件地址的用戶
Feedback count (反饋記錄數) 用戶編寫的錯誤說明