Health Monitor
總共有 3 篇文章符合此標籤
Health Monitor
最近參加了ASP.NET 3.5 MCPD 的認證考試,在我的試題中就有出現 2 到 3 題與 Health Monitor 的試題,其中有一題就提到他想監控有關使用者登入、修改密碼甚至任何與安全性有關的事件都要能夠記錄在 Health Monitor 中。如果你有看過我上一篇的介紹,你應該就知道只要註冊
之 All Audits 即可,因為它所對應的事件類別是 WebAuditEvent ,他會監控所有 ASP.NET 網站安全稽核有關的事件。另一題是他想監控 ASP.NET 網站本身是否還能夠正常提供服務,此時只要設定 Heartbeat 功能屬性不用寫任何監控的程式即可達到目的了。
ASP.NET 2.0 之後的版本已經內建此功能,不過應該鮮少人使用這個功能吧!因為至今我很少看到 ASP.NET 書籍有深入解說如何應用 Health Monitor 的,依我個人目前翻閱過書籍中僅有聖殿祭司的ASP.NET 3.5專家技術手冊II新功能篇--使用C#、ASP.NET商業級資料庫網站開發實務 有比較深入的說明,這也可能是 Health Monitor 鮮少人使用的因素之一吧!且說這也有可能是大家認為微不足道的小功能,不過卻是協助我及早發現及解決不少系統的潛在問題,所以,Health Monitor 對我來說加快了問題解決的效率、準確性也可長期觀察系統本身的穩定性盡早解決潛在的問題,因此,我還是將這些經驗記錄下來供大家參考還是希望能夠幫助需要的人。
ASP.NET 2.0 以後,Health Monitor 提供了更彈性的監控紀錄功能,不但可以透過不同的 provider 將錯誤資訊紀錄到不同的紀錄媒體外,還可以自訂要記錄ASP.NET 網站的任何資訊,甚至監控 ASP.NET 網站是否還活著(heart beat)等,再者可以在你的程式繼承 Health Monitor 相關的類別,來紀錄自訂的資訊,就如大家所皆知的 Try Catch 或當你想在某個程式邏輯的中斷點作一些資料的紀錄等。另外你也可能擔心系統若寫入資訊太過頻繁,也容易影響系統效能的問題,Health Monitor 也可以有個緩衝的機制來解決此問題,不需每一筆紀錄都要寫入一次,而在一個緩衝時間一次寫入多筆記錄,如此可以避免因寫入紀錄時所造成的瓶頸。