WebRequestErrorEvent Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Definisce l'evento che contiene informazioni sugli errori di richiesta 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
- Ereditarietà
- Derivato
Esempio
Nell'esempio di codice seguente sono presenti due parti. La prima parte è un estratto di un file di configurazione che consente ASP.NET di usare un evento personalizzato. La seconda parte mostra come derivare dalla WebRequestErrorEvent classe per creare l'evento personalizzato.
<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
Commenti
Viene WebRequestErrorEvent generato se si verifica un errore durante una richiesta Web. L'applicazione deve usare questo evento per ottenere informazioni correlate alle richieste, come definito dalle WebRequestInformation classi e WebThreadInformation .
Note
Nella maggior parte dei casi si userà lo standard ASP.NET tipi di monitoraggio dell'integrità e ne si controllererà il comportamento impostando la sezione di configurazione healthMonitoring. È anche possibile creare tipi personalizzati, come illustrato nell'esempio seguente. Se si crea il tipo di evento personalizzato ed è necessario aggiungere informazioni personalizzate, personalizzare il FormatCustomEventDetails metodo, in questo modo si evita la sovrascrittura o la manomissione delle informazioni sensibili del sistema.
Costruttori
| Nome | Descrizione |
|---|---|
| WebRequestErrorEvent(String, Object, Int32, Exception) |
Inizializza la WebRequestErrorEvent classe con i parametri di evento specificati. |
| WebRequestErrorEvent(String, Object, Int32, Int32, Exception) |
Inizializza la WebRequestErrorEvent classe con i parametri di evento specificati. |
Proprietà
| Nome | Descrizione |
|---|---|
| ErrorException |
Ottiene l'oggetto Exception associato all'errore. (Ereditato da WebBaseErrorEvent) |
| EventCode |
Ottiene il valore di codice associato all'evento. (Ereditato da WebBaseEvent) |
| EventDetailCode |
Ottiene il codice di dettaglio dell'evento. (Ereditato da WebBaseEvent) |
| EventID |
Ottiene l'identificatore associato all'evento. (Ereditato da WebBaseEvent) |
| EventOccurrence |
Ottiene un contatore che rappresenta il numero di volte in cui si è verificato l'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 l'ora in cui è stato generato l'evento. (Ereditato da WebBaseEvent) |
| EventTimeUtc |
Ottiene l'ora in cui è stato generato l'evento. (Ereditato da WebBaseEvent) |
| Message |
Ottiene il messaggio che descrive l'evento. (Ereditato da WebBaseEvent) |
| ProcessInformation |
Ottiene informazioni sul processo di hosting dell'applicazione ASP.NET. (Ereditato da WebManagementEvent) |
| RequestInformation |
Ottiene le informazioni sulla richiesta dell'applicazione. |
| ThreadInformation |
Ottiene le informazioni sul thread dell'applicazione. |
Metodi
| Nome | Descrizione |
|---|---|
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| FormatCustomEventDetails(WebEventFormatter) |
Fornisce la formattazione standard delle informazioni sull'evento. (Ereditato da WebBaseEvent) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| IncrementPerfCounters() |
Usato internamente per incrementare i contatori delle prestazioni pertinenti. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| Raise() |
Genera un evento notificando a qualsiasi provider configurato che si è verificato l'evento. (Ereditato da WebBaseEvent) |
| ToString() |
Formatta le informazioni sugli eventi a scopo di visualizzazione. (Ereditato da WebBaseEvent) |
| ToString(Boolean, Boolean) |
Formatta le informazioni sugli eventi a scopo di visualizzazione. (Ereditato da WebBaseEvent) |