WebErrorEvent Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет сведения о системных ошибках.
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
- Наследование
Примеры
В следующем примере кода показано, как наследовать от WebErrorEvent класса для создания пользовательского события.
Также показан фрагмент файла конфигурации, который позволяет ASP.NET использовать это настраиваемое событие.
<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
Комментарии
ASP.NET мониторинг работоспособности позволяет рабочим и операционным сотрудникам управлять развернутыми веб-приложениями. Пространство System.Web.Management имен содержит типы событий работоспособности, отвечающие за упаковку данных о состоянии работоспособности приложения, и типы поставщиков, ответственные за обработку этих данных. Он также содержит вспомогательные типы, которые помогают во время управления событиями работоспособности.
Содержит WebErrorEvent сведения об ошибках, вызванных проблемами с конфигурацией или кодом приложения. Например, ошибка, выдаваемая ASP.NET при обнаружении ошибки на странице.
Примечание
В большинстве случаев вы сможете использовать ASP.NET типы мониторинга работоспособности, как реализовано, и вы будете управлять системой мониторинга работоспособности, указывая значения в healthMonitoring
разделе конфигурации. Вы также можете наследоваться от типов мониторинга работоспособности для создания собственных пользовательских событий и поставщиков. Пример наследования от WebErrorEvent класса см. в примере, приведенном в этом разделе.
Конструкторы
WebErrorEvent(String, Object, Int32, Exception) |
Инициализирует класс WebErrorEvent, используя предоставленные параметры. |
WebErrorEvent(String, Object, Int32, Int32, Exception) |
Инициализирует новый экземпляр класса WebErrorEvent с использованием предоставленных параметров. |
Свойства
ErrorException |
Получает Exception, связанный с ошибкой (Унаследовано от WebBaseErrorEvent) |
EventCode |
Получает значение кода, связанное с событием. (Унаследовано от WebBaseEvent) |
EventDetailCode |
Получает подробный код события. (Унаследовано от WebBaseEvent) |
EventID |
Получает идентификатор, связанный с событием. (Унаследовано от WebBaseEvent) |
EventOccurrence |
Получает значение счетчика, показывающее, сколько раз произошло событие. (Унаследовано от WebBaseEvent) |
EventSequence |
Получает количество порождений события приложением. (Унаследовано от WebBaseEvent) |
EventSource |
Получает объект, порождающий событие. (Унаследовано от WebBaseEvent) |
EventTime |
Получает время порождения события. (Унаследовано от WebBaseEvent) |
EventTimeUtc |
Получает время порождения события. (Унаследовано от WebBaseEvent) |
Message |
Получает сообщение, описывающее событие. (Унаследовано от WebBaseEvent) |
ProcessInformation |
Получает сведения о размещающем приложение процессе ASP.NET. (Унаследовано от WebManagementEvent) |
RequestInformation |
Получает сведения о запросе приложения. |
ThreadInformation |
Возвращает сведения о потоке приложения. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FormatCustomEventDetails(WebEventFormatter) |
Обеспечивает стандартное форматирование сведений о событии. (Унаследовано от WebBaseEvent) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
IncrementPerfCounters() |
Используется для внутренних целей для увеличения значений счетчиков производительности. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
Raise() |
Порождает событие, уведомляя любого настроенного поставщика о произошедшем событии. (Унаследовано от WebBaseEvent) |
ToString() |
Форматирует сведения события для последующего отображения. (Унаследовано от WebBaseEvent) |
ToString(Boolean, Boolean) |
Форматирует сведения события для последующего отображения. (Унаследовано от WebBaseEvent) |