WebRequestErrorEvent Classe

Definição

Define o evento que transporta informação sobre erros de pedidos Web.

public ref class WebRequestErrorEvent : System::Web::Management::WebBaseErrorEvent
public class WebRequestErrorEvent : System.Web.Management.WebBaseErrorEvent
type WebRequestErrorEvent = class
    inherit WebBaseErrorEvent
Public Class WebRequestErrorEvent
Inherits WebBaseErrorEvent
Herança
Derivado

Exemplos

O seguinte exemplo de código tem duas partes. A primeira parte é um excerto de um ficheiro de configuração que permite ao ASP.NET usar um evento personalizado. A segunda parte mostra como derivar a partir da WebRequestErrorEvent classe para criar o evento personalizado.

<healthMonitoring enabled="true" heartBeatInterval="0">
  <eventMappings>
    <add  name="SampleWebRequestErrorEvent" type="SamplesAspNet.SampleWebRequestErrorEvent,webrequesterrorevent,Version=1.0.1573.21654, Culture=neutral, PublicKeyToken=63ada862a6c5af13, processorArchitecture=MSIL"/>
  </eventMappings>

  <rules>
    <add
      name="Custom Web Request Error Events"
      eventName="SampleWebRequestErrorEvent"
      provider="EventLogProvider"
      profile="Critical"/>
  </rules>
</healthMonitoring>

using System;
using System.Text;
using System.Web;
using System.Web.Management;

namespace Samples.AspNet.Management
{
  // Implements a custom WebRequestErrorEvent class. 
    public class SampleWebRequestErrorEvent : 
        WebRequestErrorEvent
    {
        private StringBuilder eventInfo;

        // Invoked in case of events 
        // identified only by their event code.
        public SampleWebRequestErrorEvent(string msg, 
            object eventSource, int eventCode, 
            Exception e):
          base(msg, eventSource, eventCode, e)
        {
            // Perform custom initialization.
            eventInfo = new StringBuilder();
            eventInfo.Append(string.Format(
                "Event created at: ", EventTime.ToString()));
        }

        // Invoked in case of events identified 
        // by their event code.and related event 
        // detailed code.
        public SampleWebRequestErrorEvent(
            string msg, object eventSource, 
            int eventCode, int detailedCode, 
            Exception e):
          base(msg, eventSource, 
            eventCode, detailedCode, e)
        {
            // Perform custom initialization.
            eventInfo = new StringBuilder();
            eventInfo.Append(string.Format(
                "Event created at: ", EventTime.ToString()));
        }


        // Raises the SampleWebRequestErrorEvent.
        public override void Raise()
        {
            // Perform custom processing. 
            eventInfo.Append(string.Format(
                "Event raised at: ", EventTime.ToString()));
            // Raise the event.
            base.Raise();
        }

        // Obtains the current request information.
        public string GetRequestInfo()
        {
            string reqInfo = GetRequestInfo();
            return reqInfo;
        }

        // Obtains the current thread information.
        public string GetThreadInfo()
        {
            string threadInfo = GetThreadInfo();
            return threadInfo;
        }

        // Obtains the current process information.
        public string GetProcessInfo()
        {
            string procInfo = GetProcessInfo();
            return procInfo;
        }

        //Formats Web request event information.
        public override void FormatCustomEventDetails(
               WebEventFormatter formatter)
        {
            base.FormatCustomEventDetails(formatter);

            // Add custom data.
            formatter.AppendLine("");

            formatter.IndentationLevel += 1;
            formatter.AppendLine(
                "** SampleWebRequestEvent Start **");

            // Add custom data.
            formatter.AppendLine(eventInfo.ToString());

            formatter.AppendLine(
                      "** SampleWebRequestEvent End **");
        }
    }
}
Imports System.Text
Imports System.Web
Imports System.Web.Management


' Implements a custom WebRequestErrorEvent class. 
Public Class SampleWebRequestErrorEvent
   Inherits WebRequestErrorEvent
   Private eventInfo As StringBuilder
   
   
   ' Invoked in case of events 
   ' identified only by their event code.
    Public Sub New(ByVal msg As String, _
    ByVal eventSource As Object, _
    ByVal eventCode As Integer, _
    ByVal e As Exception)
        MyBase.New(msg, eventSource, _
        eventCode, e)
        ' Perform custom initialization.
        eventInfo = New StringBuilder()
        eventInfo.Append(String.Format( _
        "Event created at: ", _
        EventTime.ToString()))
    End Sub
   
   
   ' Invoked in case of events identified 
   ' by their event code.and related event 
   ' detailed code.
    Public Sub New(ByVal msg As String, _
    ByVal eventSource As Object, _
    ByVal eventCode As Integer, _
    ByVal detailedCode As Integer, _
    ByVal e As Exception)
        MyBase.New(msg, eventSource, _
        eventCode, detailedCode, e)
        ' Perform custom initialization.
        eventInfo = New StringBuilder()
        eventInfo.Append(String.Format( _
        "Event created at: ", _
        EventTime.ToString()))
    End Sub
   
   
   ' Raises the SampleWebRequestErrorEvent.
   Public Overrides Sub Raise()
      ' Perform custom processing. 
        eventInfo.Append(String.Format( _
        "Event raised at: ", _
        EventTime.ToString()))
      ' Raise the event.
      MyBase.Raise()
   End Sub
   
   ' Obtains the current request information.
   Public Function GetRequestInfo() As String
      Dim reqInfo As String = GetRequestInfo()
      Return reqInfo
   End Function 'GetRequestInfo
   
   
   ' Obtains the current thread information.
   Public Function GetThreadInfo() As String
      Dim threadInfo As String = GetThreadInfo()
      Return threadInfo
   End Function 'GetThreadInfo
   
   
   ' Obtains the current process information.
   Public Function GetProcessInfo() As String
      Dim procInfo As String = GetProcessInfo()
      Return procInfo
   End Function 'GetProcessInfo
   
   
   'Formats Web request event information.
    Public Overrides Sub FormatCustomEventDetails( _
    ByVal formatter As WebEventFormatter)
        MyBase.FormatCustomEventDetails(formatter)

        ' Add custom data.
        formatter.AppendLine("")

        formatter.IndentationLevel += 1
        formatter.AppendLine( _
        "** SampleWebRequestEvent Start **")

        ' Add custom data.
        formatter.AppendLine(eventInfo.ToString())

        formatter.AppendLine( _
        "** SampleWebRequestEvent End **")

    End Sub

End Class

Observações

O WebRequestErrorEvent é levantado se ocorrer um erro durante um pedido Web. A sua aplicação deve usar este evento para obter informações relacionadas com pedidos, conforme definido pelas WebRequestInformation classes e WebThreadInformation .

Note

Na maioria dos casos, vai usar os tipos padrão de monitorização de saúde ASP.NET e controlar o seu comportamento definindo a secção de configuração healthMonitoring. Também pode criar tipos personalizados, como mostrado no exemplo seguinte. Se criar o seu tipo de evento personalizado e precisar de adicionar a sua própria informação, personalize o FormatCustomEventDetails método, isso evitará sobrescrever ou manipular informações sensíveis do sistema.

Construtores

Name Description
WebRequestErrorEvent(String, Object, Int32, Exception)

Inicializa a WebRequestErrorEvent classe com parâmetros de evento especificados.

WebRequestErrorEvent(String, Object, Int32, Int32, Exception)

Inicializa a WebRequestErrorEvent classe com parâmetros de evento especificados.

Propriedades

Name Description
ErrorException

Obtém o Exception erro associado.

(Herdado de WebBaseErrorEvent)
EventCode

Obtém o valor do código associado ao evento.

(Herdado de WebBaseEvent)
EventDetailCode

Obtém o código de detalhe do evento.

(Herdado de WebBaseEvent)
EventID

Obtém o identificador associado ao evento.

(Herdado de WebBaseEvent)
EventOccurrence

Recebe um contador que representa o número de vezes que o evento ocorreu.

(Herdado de WebBaseEvent)
EventSequence

Obtém o número de vezes que o evento foi levantado pela aplicação.

(Herdado de WebBaseEvent)
EventSource

Fica com o objeto que eleva o evento.

(Herdado de WebBaseEvent)
EventTime

Obtém a hora em que o evento foi levantado.

(Herdado de WebBaseEvent)
EventTimeUtc

Obtém a hora em que o evento foi levantado.

(Herdado de WebBaseEvent)
Message

Recebe a mensagem que descreve o evento.

(Herdado de WebBaseEvent)
ProcessInformation

Obtém informações sobre o processo de alojamento de aplicações ASP.NET.

(Herdado de WebManagementEvent)
RequestInformation

Obtém a informação do pedido de candidatura.

ThreadInformation

Obtém a informação do tópico de candidatura.

Métodos

Name Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FormatCustomEventDetails(WebEventFormatter)

Fornece formatação padrão da informação do evento.

(Herdado de WebBaseEvent)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IncrementPerfCounters()

Usado internamente para incrementar os contadores de desempenho relevantes.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
Raise()

Levanta um evento ao notificar qualquer fornecedor configurado de que o evento ocorreu.

(Herdado de WebBaseEvent)
ToString()

Formata a informação do evento para fins de exibição.

(Herdado de WebBaseEvent)
ToString(Boolean, Boolean)

Formata a informação do evento para fins de exibição.

(Herdado de WebBaseEvent)

Aplica-se a

Ver também