HealthMonitoring中的HttpRequest对象

时间:2009-06-26 12:03:14

标签: asp.net health-monitoring

我正在为asp .net 2.0应用程序设置一些健康监控。

我希望能够获取原始的Web请求对象。我希望能够检查发送的标头以及可能的任何发布数据。

我目前有一个继承自WebEventProvider的事件提供程序,但这只包含HttpWebResponse数据,而不是请求。

我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

您是否打算仅针对您的应用程序或IIS中的所有应用程序进行运行状况监控?

只有您自己的应用程序,您可以创建一个类并从IHttpModule派生,并且在其Init方法中,您甚至可以创建事件通知来监视请求和任何其他状态。

public class MyMonitor : IHttpModule
{

        public void Init(HttpApplication context)
        {
            // you can watch any of such events and respond accordingly
            context.BeginRequest += new EventHandler(context_BeginRequest);
            context.PostUpdateRequestCache += 
               new EventHandler(context_PostUpdateRequestCache);
            context.Error += new EventHandler(context_Error);
        }
        .....
}

您可以在web.config中添加以下行

<httpModules>
    <add name="MyMonitor" type="Namespace.MyMonitor"/>
</httpModules>