【清清月兒】ASP.NET中用healthMonitor屬性用
Asp.net如何實現頁面間的引數傳遞。
在ASP.NET 2.0中,可以使用healthMonitoring屬性監測事件。healthMonitoring屬性是一個基於方法的provider,在這裡可以構造自己的provider。利用healthMonitoring屬性,我們可以諸如記錄錯語、成功的事件等,對不同的資料來源,如事件日誌,Sql Server甚至對於自己通過繼承WebEventProvider類建立自己的providers。在此文章中,我打算介紹配置一個監測SqlServer錯語的並且對某人的電子信箱地址傳送郵件的web應用程式。首先,看一下在web.config中的healthMonitoring程式片段,在此可以建立將要用到的事件。
如果看一下
bufferModes,在此可以定義一個Provider的緩衝區大小。
Providers,在此說明處理事件的Providers。
eventMappings, 在此可以畫出與友好事件型別相關的事件名稱。
profiles, 在此定義一個可以用來配置事件的引數集集合。
rules, 在此畫出Providers的事件圖。
可以閱讀更多含在VS 2550文件中的關於這些元素的東西。
在繼續之前,這裡有一份含ASP.NET中的一些Providers清單:
System.Web.Management.MailWebEventProvider
System.Web.Management.SimpleMailWebEventProvider
System.Web.Management.TemplatedMailWebEventProvider
System.Web.Management.TraceWebEventProvider
System.Web.Management.EventLogWebEventProvider
System.Web.Management.SqlWebEventProvider
System.Web.Management.WmiWebEventProvider
不需要解釋這些,名字告訴我們它們是幹什麼的。還要提一下SqlWebEventProvider依靠Sql server而工作,它將事件儲存在aspnet_Web_Event表。為了安裝此資料庫,必須執行位於framework資料夾中的aspnet_regsql.exe嚮導。
現在,配置對Sql server provider有登入錯語並且傳送一個電子郵件而產生錯誤的程式。
下面是一個使用SqlWebEventProvider和SimpleMailWebEventProvider來存錯語事件的例子。
bodyFooter="Please investigate ASAP." subjectPrefix="Action required." buffer="true" bufferMode="Critical Notification" maxEventLength="4096" maxSize="4096" maxMessagesPerNotification="1"/>
bufferMode="Analysis"/>
在此例子中,使用Sql provider來記錄所有錯語事件,並且當Web請求錯誤事件被喚醒時使用mail provider來傳送一個訊息。
這裡有一些ASP .NET 2.0一起釋出的事件:
System.Web.Management.WebBaseEvent
System.Web.Management.WebHeartBeatEvent
System.Web.Management.WebApplicationLifetimeEvent
System.Web.Management.WebRequestEvent
System.Web.Management.WebBaseErrorEvent
System.Web.Management.WebErrorEvent
System.Web.Management.WebRequestErrorEvent
System.Web.Management.WebAuditEvent
System.Web.Management.WebFailureAuditEvent
System.Web.Management.WebSuccessAuditEvent
System.Web.Management.WebManagementEvent
System.Web.Management.WebViewStateFailureAuditEvent
System.Web.Management.WebAuthenticationFailureAuditEvent
System.Web.Management.WebAuthenticationSuccessAuditEvent
可以使用這些事件來對一個provider畫圖。也可以建立通過WebBaseEvent類繼承來的自己的事件。
為自動喚醒一個事件,可以使用WebBaseEvent類的喚醒方法:
try
{
//....
}
catch(Exception e)
{
if (HealthMonitoringManager.Enabled)
{
WebBaseEvent.Raise(new WebErrorEvent("My Error message", null, 5000, e));
}
}
or:
if (HealthMonitoringManager.Enabled)
{
WebErrorEvent event = new WebErrorEvent("My error message", null, 5000, e);
event.Raise();
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-329668/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【清清月兒】用SQL 2005的ROW_NUMBER() 實現分頁功能SQL
- ASP.NET CausesValidation 屬性ASP.NET
- asp.net的發展與其屬性ASP.NET
- (精華)2020年7月21日 ASP.NET Core 容器偽屬性注入ASP.NET
- ASP.NET中的DataGrid的屬性 (轉)ASP.NET
- 在Linux中用chattr和lsattr命令管理檔案和目錄屬性Linux
- Struts的Indexed屬性用處Index
- CMake 屬性之全域性屬性
- 【張逸】ASP.Net中控制元件的EnableViewState屬性ASP.NET控制元件View
- ASP.NET MVC4中用 BundleCollection使用問題手記ASP.NETMVC
- WPF 屬性系統 依賴屬性之記憶體佔用分析記憶體
- iOS動畫 屬性屬性解析iOS動畫
- defer 屬性和 async 屬性
- 在ASP.NET Core中用HttpClient(六)——ASP.NET Core中使用HttpClientFactoryASP.NETHTTPclient
- CUDA(五)用deviceQuery看GPU屬性devGPU
- infile * 不能和str屬性連用
- ASP.NET的Page.IsPostBack 屬性詳細說明(轉)ASP.NET
- CSS 屬性篇(七):Display屬性CSS
- CMake 屬性之目標屬性
- CMake 屬性之目錄屬性
- 清清清流!今年ChinaJoy,你登入網易遊戲“文化體驗服”了嗎?遊戲
- ASP.Net中用DataGrid運算元據庫ASP.NET
- HTML5中margin屬性應用HTML
- JavaScript私有屬性和靜態屬性JavaScript
- 【Clingingboy】asp.net 簡單介紹自定義控制元件簡單屬性和複雜屬性ASP.NET控制元件
- CSS字型屬性和文字屬性詳解CSS
- ASP.NET Core預設容器實現Controller的屬性注入ASP.NETController
- selenium用XPATH直接獲取屬性值 需要使用.get_attribute(“屬性名”)
- JSON 屬性必須用雙引號JSON
- 深入理解和應用display屬性(二)
- Android應用程式的debug屬性Android
- 用屬性封裝 Session 及 VIewState 的存取封裝SessionView
- 用Descriptor來實現類級屬性(Property)
- 應用程式池屬性詳解及配置
- 私有屬性
- allowfullscreen 屬性
- background 屬性
- cssText 屬性CSS