ExceptionProcessProvider異常框架(下)
異常展示
系統異常模塊除了記錄功能,還有一個很重要的功能:異常展示,即系統發生異常後,展示給用戶怎 樣的頁面。展示給用戶友好頁面具有以下必要性:
展示給用戶友好頁面,可以降低用戶焦慮感,提高用戶體驗。
將系統異常隱藏,避免代碼、路徑等技術信息外洩,提高系統安全性。
將系統運行時異常統一管理,有助於提高軟件整體質量,便於整體把控。
友好頁面的展示類型也是根據配置節點信息完成的,管理員只需更改配置節點中的枚舉值,即可改變 用戶體驗頁面,用戶體驗頁面共有10中方式,分別是拋出原始異常信息、拋出定制異常信息、拋出簡單信 息(不包含異常)以及隱藏異常信息等方式。
在系統開發階段,可以使用拋出原始異常信息的展現方式,系統部署後,可以使用拋出簡單信息(不包 含異常)或隱藏異常信息的方式,選擇這些展示方式的同時,還可以選擇是否記錄到日志介質。
各種異常展示的配置信息大全,假如有一個頁面代碼如下:
代碼
try
{
string i = "i";
Response.Write(i);
}
catch (Exception ex)
{
ILException ile = new ILException();
ile.WriteLog(ex);
}
正常訪問頁面顯示字符串“i”,假如代碼修改如下,便會發生錯誤:
代碼
try
{
string i = "i";
Response.Write(Convert.ToInt32(i));
}
catch (Exception ex)
{
ILException ile = new ILException();
ile.WriteLog(ex);
}