WebErrorEvent Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece informações sobre erros sistémicos.
public ref class WebErrorEvent : System::Web::Management::WebBaseErrorEvent
public class WebErrorEvent : System.Web.Management.WebBaseErrorEvent
type WebErrorEvent = class
inherit WebBaseErrorEvent
Public Class WebErrorEvent
Inherits WebBaseErrorEvent
- Herança
Exemplos
O exemplo de código seguinte mostra como derivar a partir da WebErrorEvent classe para criar um evento personalizado.
Também é mostrado um excerto do ficheiro de configuração que permite ao ASP.NET usar este evento personalizado.
<healthMonitoring
enabled="true" heartBeatInterval="0">
<eventMappings>
<add name="SampleWebErrorEvent" type="SamplesAspNet.SampleWebErrorEvent,weberrorevent,Version=1.0.1573.21549, Culture=neutral, PublicKeyToken=2a0b23915ac7352b, processorArchitecture=MSIL"/>
</eventMappings>
<profiles>
<add name="Custom"
minInstances="1"
maxLimit="Infinite"
minInterval="00:00:00" />
</profiles>
<rules>
<clear />
<add name="Custom Web Error Event"
eventName="SampleWebErrorEvent"
provider="EventLogProvider"
profile="Custom" />
</rules>
</healthMonitoring>
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
Observações
A monitorização do estado do ASP.NET permite que as equipas de produção e operações gerenciem aplicações Web implementadas. O System.Web.Management namespace contém os tipos de eventos de saúde responsáveis por empacotar os dados de estado de saúde da aplicação e os tipos de fornecedores responsáveis pelo processamento desses dados. Inclui também tipos de apoio que ajudam na gestão de eventos de saúde.
Fornece WebErrorEvent informações sobre erros causados por problemas de configuração ou código de aplicação. Um exemplo é o erro emitido pelo ASP.NET quando é encontrado um erro numa página.
Note
Na maioria dos casos, poderá usar os tipos de monitorização de saúde ASP.NET tal como implementados, e controlará o sistema de monitorização de saúde especificando valores na secção de configuração healthMonitoring. Também pode recorrer aos tipos de monitorização de saúde para criar os seus próprios eventos e prestadores personalizados. Para um exemplo de derivação da WebErrorEvent turma, veja o exemplo apresentado neste tópico.
Construtores
| Name | Description |
|---|---|
| WebErrorEvent(String, Object, Int32, Exception) |
Inicializa a WebErrorEvent classe usando os parâmetros fornecidos. |
| WebErrorEvent(String, Object, Int32, Int32, Exception) |
Inicializa uma nova instância da WebErrorEvent classe usando os parâmetros fornecidos. |
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 |
Recebe a informação do tópico de aplicação. |
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 contadores de desempenho. |
| 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) |