TemplatedMailWebEventProvider Class

TemplatedMailWebEventProvider Class

 

Implements an event provider that uses templates to define and format e-mails it sends for event notifications.

Namespace:   System.Web.Management
Assembly:  System.Web (in System.Web.dll)

System.Object
  System.Configuration.Provider.ProviderBase
    System.Web.Management.WebEventProvider
      System.Web.Management.BufferedWebEventProvider
        System.Web.Management.MailWebEventProvider
          System.Web.Management.TemplatedMailWebEventProvider

public sealed class TemplatedMailWebEventProvider : MailWebEventProvider

NameDescription
System_CAPS_pubpropertyBufferMode

Gets a value indicating the buffering mode used by the provider.(Inherited from BufferedWebEventProvider.)

System_CAPS_pubpropertySystem_CAPS_staticCurrentNotification

Gets the event notification object that provides the event information used by the e-mail template.

System_CAPS_pubpropertyDescription

Gets a brief, friendly description suitable for display in administrative tools or other user interfaces (UIs).(Inherited from ProviderBase.)

System_CAPS_pubpropertyName

Gets the friendly name used to refer to the provider during configuration.(Inherited from ProviderBase.)

System_CAPS_pubpropertyUseBuffering

Gets a value indicating whether the provider is in buffered mode.(Inherited from BufferedWebEventProvider.)

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodFlush()

Moves the events from the provider's buffer into the event log. (Inherited from BufferedWebEventProvider.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodInitialize(String, NameValueCollection)

This API supports the product infrastructure and is not intended to be used directly from your code. Sets the initial values for this object.(Overrides MailWebEventProvider.Initialize(String, NameValueCollection).)

System_CAPS_pubmethodProcessEvent(WebBaseEvent)

This API supports the product infrastructure and is not intended to be used directly from your code. Processes the event passed to the provider.(Inherited from MailWebEventProvider.)

System_CAPS_pubmethodProcessEventFlush(WebEventBufferFlushInfo)

This API supports the product infrastructure and is not intended to be used directly from your code. Removes all events from the provider's buffer.(Inherited from MailWebEventProvider.)

System_CAPS_pubmethodShutdown()

This API supports the product infrastructure and is not intended to be used directly from your code. Performs tasks associated with shutting down the provider.(Inherited from MailWebEventProvider.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

ASP.NET health monitoring allows production and operations staff to manage deployed Web applications. The System.Web.Management namespace contains the health event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events.

This class is not intended to be used from your code. It is created, configured, and used by the ASP.NET health-monitoring system to send event notifications by e-mail. You can define an e-mail Web event provider in a configuration file, as demonstrated in the Example section of this topic. In addition, you can configure the providers section programmatically by accessing the HealthMonitoringSection.Providers property.

The e-mail this class produces is defined and formatted using a template. This template consists of markup code defined in a standard .aspx file that outputs the text for the message body. The event information used by the template is provided by a MailEventNotificationInfo object that is available from the static CurrentNotification property of this class.

This provider has a comprehensive set of configuration attributes that you can use to customize the way it works.

The following example is a configuration file excerpt that shows how to specify a provider of type SimpleMailWebEventProvider in the <healthMonitoring> section The <add> elements in the <rules> section specify that the provider will handle request-processing errors and infrastructure errors.

<system.web>
  <healthMonitoring
    enabled="true"
    heartBeatInterval="0">
    <bufferModes>
      <add name="Critical Notification"
        maxBufferSize="100"
        maxFlushSize="20"
        urgentFlushThreshold="1"
        regularFlushInterval="Infinite"
        urgentFlushInterval="00:01:00"
        maxBufferThreads="1"
      />
    </bufferModes>
    <providers>
      <add name="CriticalMailEventProvider"
        type="System.Web.Management.TemplatedMailWebEventProvider, 
        System.Web, Version=%ASSEMBLY_VERSION%, Culture=neutral, 
        PublicKeyToken=%MICROSOFT_PUBLICKEY%"
        template="../mailtemplates/critical.aspx"
        from="sender address"
        to="someone@example.com" 
        cc="someone@example.com"
        bcc="someone@example.com"
        priority="High"
        bodyHeader="Warning!"
        bodyFooter="Please investigate ASAP."
        subjectPrefix="Action required."
        buffer="true"
        bufferMode="Critical Notification"
        maxEventLength="4096"
        maxSize="4096"
        maxMessagesPerNotification="1"
      />
    </providers>
    <eventMappings>
      <add name="Request Processing Events"
        type="System.Web.Management.WebRequestEvent, System.Web", 
        Version=%ASSEMBLY_VERSION%, Culture=neutral, 
        PublicKeyToken=%MICROSOFT_PUBLICKEY%" 
      />
      <add name="Infrastructure Errors"
        type="System.Web.Management.WebErrorEvent, System.Web, 
        Version=%ASSEMBLY_VERSION%, Culture=neutral, 
        PublicKeyToken=%MICROSOFT_PUBLICKEY%" 
      />
    </eventMappings>
    <profiles>
      <add name="Default"
        minInstances="1"
        maxLimit="Infinite"
        minInterval="00:10:00"
      />
      <add name="Critical"
        minInstances="1"
        maxLimit="1024"
        minInterval="00:00:00"
      />
    </profiles>
    <rules>
      <add name="Request Processing Errors"
        eventName="Request Processing Errors"
        provider="CriticalMailEventProvider"
        profile="Default"
      />
      <add name="Infrastructure Notifications"
        eventName="Infrastructure Errors"
        provider="CriticalMailEventProvider"
        profile="Critical"
      />
    </rules>
  </healthMonitoring> 
</system.web>

.NET Framework
Available since 2.0

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show:
© 2016 Microsoft