Condividi tramite


WebBaseErrorEvent Classe

Definizione

Funge da classe base per tutti gli eventi di errore del monitoraggio dello stato.

public ref class WebBaseErrorEvent : System::Web::Management::WebManagementEvent
public class WebBaseErrorEvent : System.Web.Management.WebManagementEvent
type WebBaseErrorEvent = class
    inherit WebManagementEvent
Public Class WebBaseErrorEvent
Inherits WebManagementEvent
Ereditarietà
Derivato

Esempio

Nell'esempio di codice seguente sono presenti due parti. Il primo è un estratto di un file di configurazione che consente ASP.NET monitoraggio dell'integrità per usare un evento derivato dalla WebBaseErrorEvent classe. Il secondo illustra come derivare dalla classe per creare l'evento WebBaseErrorEvent personalizzato.

<healthMonitoring   
  enabled="true" heartBeatInterval="0">  

  <providers>  
    <!-- Define the custom provider that   
         processes custom Web request events. -->  
    <add name="SampleWebEventProvider"   
      type="SamplesAspNet.SampleEventProvider,  
      webeventprovider,Version=1.0.1573.18094,   
      Culture=neutral, PublicKeyToken=b5a57a9a9d487cf4,   
      processorArchitecture=MSIL"/>  
  </providers>  

  <eventMappings>  

    <!--  Define the event source that issues custom events.   -->  
    <add  name="SampleWebBaseErrorEvent"      
      type="SamplesAspNet.SampleWebBaseErrorEvent,  
      webbaseerrorevent,Version=1.0.1573.21549, Culture=neutral,     
      PublicKeyToken=2a0b23915ac7352b, processorArchitecture=MSIL"/>  
  </eventMappings>  

  <rules>  
    <!-- Associate custom event with related   
      custom provider -->  
    <add   
       name="Custom Web Base Errors"  
       eventName="SampleWebBaseErrorEvent"   
       provider="SampleWebEventProvider"   
       profile="Custom"/>    
  </rules>  

</healthMonitoring>  

Il codice seguente illustra come derivare dalla WebBaseErrorEvent classe per creare un evento personalizzato.


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

namespace Samples.AspNet.Management
{
  // Implements a custom WebErrorEvent class. 

    public class SampleWebErrorEvent : WebErrorEvent
    {
        private StringBuilder eventInfo;

        // Invoked in case of events identified 
        // only by their event code.
        public SampleWebErrorEvent(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 SampleWebErrorEvent(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 SampleWebErrorEvent.
        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(
                "** SampleWebErrorEvent Start **");
          
            formatter.AppendLine(eventInfo.ToString());

            formatter.AppendLine(
                "** SampleWebBaseErrorEvent End **");

            formatter.IndentationLevel -= 1;
        }
    }
}
Imports System.Text
Imports System.Web
Imports System.Web.Management


' Implements a custom WebErrorEvent class. 

Public Class SampleWebErrorEvent
   Inherits WebErrorEvent
   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 SampleWebErrorEvent.
   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( _
        "** SampleWebErrorEvent Start **")

        formatter.AppendLine(eventInfo.ToString())

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

        formatter.IndentationLevel -= 1
    End Sub

End Class

Commenti

ASP.NET monitoraggio dell'integrità consente al personale di produzione e operazioni di gestire le applicazioni Web distribuite. Lo System.Web.Management spazio dei nomi contiene i tipi di evento di integrità responsabili della creazione di pacchetti di dati relativi allo stato dell'integrità dell'applicazione e i tipi di provider responsabili dell'elaborazione di questi dati. Contiene anche tipi di supporto che consentono durante la gestione degli eventi di integrità.

La WebBaseErrorEvent classe è la classe di base per gli eventi di monitoraggio dell'integrità che rappresentano le condizioni di errore. ASP.NET usa e i WebBaseErrorEvent relativi tipi derivati per indicare le condizioni di errore durante la durata di un'applicazione Web.

Nota

Nella maggior parte dei casi sarà possibile usare i tipi di monitoraggio dell'integrità ASP.NET implementati e si controlla il sistema di monitoraggio dell'integrità specificando i valori nella healthMonitoring sezione di configurazione. È anche possibile derivare dai tipi di monitoraggio dell'integrità per creare eventi e provider personalizzati. Per un esempio di derivazione dalla classe, vedere l'esempio WebBaseErrorEvent fornito in questo argomento.

Costruttori

WebBaseErrorEvent(String, Object, Int32, Exception)

Inizializza una nuova istanza della classe WebBaseErrorEvent.

WebBaseErrorEvent(String, Object, Int32, Int32, Exception)

Inizializza una nuova istanza della classe WebBaseErrorEvent.

Proprietà

ErrorException

Ottiene l'oggetto Exception associato all'errore.

EventCode

Ottiene il valore di codice associato all'evento.

(Ereditato da WebBaseEvent)
EventDetailCode

Ottiene il codice dettagliato dell'evento.

(Ereditato da WebBaseEvent)
EventID

Ottiene l'identificatore associato all'evento.

(Ereditato da WebBaseEvent)
EventOccurrence

Ottiene un contatore che rappresenta il numero di occorrenze dell'evento.

(Ereditato da WebBaseEvent)
EventSequence

Ottiene il numero di volte in cui l'evento è stato generato dall'applicazione.

(Ereditato da WebBaseEvent)
EventSource

Ottiene l'oggetto che genera l'evento.

(Ereditato da WebBaseEvent)
EventTime

Ottiene la data e l'ora in cui è stato generato l'evento.

(Ereditato da WebBaseEvent)
EventTimeUtc

Ottiene la data e l'ora in cui è stato generato l'evento.

(Ereditato da WebBaseEvent)
Message

Ottiene il messaggio nel quale è descritto l'evento.

(Ereditato da WebBaseEvent)
ProcessInformation

Ottiene informazioni sul processo che ospita l'applicazione ASP.NET.

(Ereditato da WebManagementEvent)

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FormatCustomEventDetails(WebEventFormatter)

Fornisce una formattazione standard delle informazioni relative all'evento.

(Ereditato da WebBaseEvent)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IncrementPerfCounters()

Incrementa i contatori relativi alle prestazioni per gli eventi di errore.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
Raise()

Genera un evento notificando a qualsiasi provider configurato che l'evento si è verificato.

(Ereditato da WebBaseEvent)
ToString()

Formatta le informazioni relative all'evento ai fini della visualizzazione.

(Ereditato da WebBaseEvent)
ToString(Boolean, Boolean)

Formatta le informazioni relative all'evento ai fini della visualizzazione.

(Ereditato da WebBaseEvent)

Si applica a

Vedi anche