WebAuditEvent Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Służy jako klasa bazowa dla wszystkich zdarzeń inspekcji monitorowania kondycji ASP.NET.
public ref class WebAuditEvent : System::Web::Management::WebManagementEvent
public class WebAuditEvent : System.Web.Management.WebManagementEvent
type WebAuditEvent = class
inherit WebManagementEvent
Public Class WebAuditEvent
Inherits WebManagementEvent
- Dziedziczenie
- Pochodne
Przykłady
Poniższy przykład kodu pokazuje, jak pochodzić z klasy w WebAuditEvent celu utworzenia niestandardowego zdarzenia inspekcji.
using System;
using System.Text;
using System.Web;
using System.Web.Management;
namespace SamplesAspNet
{
// Implements a custom WebAuditEvent class.
public class SampleWebAuditEvent : System.Web.Management.WebAuditEvent
{
private string customCreatedMsg, customRaisedMsg;
// Invoked in case of events identified only by their event code.
public SampleWebAuditEvent(string msg, object eventSource,
int eventCode): base(msg, eventSource, eventCode)
{
// Perform custom initialization.
customCreatedMsg =
string.Format("Event created at: {0}",
DateTime.Now.TimeOfDay.ToString());
}
// Invoked in case of events identified by their event code.and
// event detailed code.
public SampleWebAuditEvent(string msg, object eventSource,
int eventCode, int detailedCode):
base(msg, eventSource, eventCode, detailedCode)
{
// Perform custom initialization.
customCreatedMsg =
string.Format("Event created at: {0}",
DateTime.Now.TimeOfDay.ToString());
}
// Raises the SampleWebAuditEvent.
public override void Raise()
{
// Perform custom processing.
customRaisedMsg =
string.Format("Event raised at: {0}",
DateTime.Now.TimeOfDay.ToString());
// Raise the event.
WebBaseEvent.Raise(this);
}
// Obtains the current thread information.
public WebRequestInformation GetRequestInformation()
{
// Obtain the Web request information.
// No customization is allowed here.
return RequestInformation;
}
//Formats Web request event information.
//This method is invoked indirectly by the provider
// using one of the overloaded ToString() methods.
public override void FormatCustomEventDetails(
WebEventFormatter formatter)
{
base.FormatCustomEventDetails(formatter);
// Add custom data.
formatter.AppendLine("");
formatter.IndentationLevel += 1;
formatter.AppendLine(
"******** SampleWebAuditEvent Information Start ********");
formatter.AppendLine(string.Format("Request path: {0}",
RequestInformation.RequestPath));
formatter.AppendLine(string.Format("Request Url: {0}",
RequestInformation.RequestUrl));
// Display custom event timing.
formatter.AppendLine(customCreatedMsg);
formatter.AppendLine(customRaisedMsg);
formatter.AppendLine(
"******** SampleWebAuditEvent Information End ********");
formatter.IndentationLevel -= 1;
}
}
}
Imports System.Text
Imports System.Web
Imports System.Web.Management
' Implements a custom WebAuditEvent class.
Public Class SampleWebAuditEvent
Inherits System.Web.Management.WebAuditEvent
Private customCreatedMsg, customRaisedMsg As String
' 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)
MyBase.New(msg, eventSource, eventCode)
' Perform custom initialization.
customCreatedMsg = String.Format("Event created at: {0}", DateTime.Now.TimeOfDay.ToString())
End Sub
' Invoked in case of events identified by their event code.and
' event detailed code.
Public Sub New(ByVal msg As String, ByVal eventSource As Object, _
ByVal eventCode As Integer, ByVal detailedCode As Integer)
MyBase.New(msg, eventSource, eventCode, detailedCode)
' Perform custom initialization.
customCreatedMsg = String.Format("Event created at: {0}", _
DateTime.Now.TimeOfDay.ToString())
End Sub
' Raises the SampleWebAuditEvent.
Public Overrides Sub Raise()
' Perform custom processing.
customRaisedMsg = String.Format("Event raised at: {0}", _
DateTime.Now.TimeOfDay.ToString())
' Raise the event.
WebBaseEvent.Raise(Me)
End Sub
' Obtains the current thread information.
Public Function GetRequestInformation() As WebRequestInformation
' Obtain the Web request information.
' No customization is allowed here.
Return RequestInformation
End Function 'GetRequestInformation
'Formats Web request event information.
'This method is invoked indirectly by the provider
' using one of the overloaded ToString() methods.
Public Overrides Sub FormatCustomEventDetails(ByVal formatter As WebEventFormatter)
MyBase.FormatCustomEventDetails(formatter)
' Add custom data.
formatter.AppendLine("")
formatter.IndentationLevel += 1
formatter.AppendLine("******** SampleWebAuditEvent Information Start ********")
formatter.AppendLine(String.Format("Request path: {0}", RequestInformation.RequestPath))
formatter.AppendLine(String.Format("Request Url: {0}", RequestInformation.RequestUrl))
' Display custom event timing.
formatter.AppendLine(customCreatedMsg)
formatter.AppendLine(customRaisedMsg)
formatter.AppendLine("******** SampleWebAuditEvent Information End ********")
formatter.IndentationLevel -= 1
End Sub
End Class
Poniżej znajduje się fragment pliku konfiguracji, który umożliwia ASP.NET używanie zdarzenia.
<healthMonitoring
enabled="true"
heartBeatInterval="0">
<providers>
<add name="EventLogProvider"
type="System.Web.Management.EventLogWebEventProvider,
System.Web,Version=2.0.3600.0,Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"/>
</providers>
<eventMappings>
<add name="SampleWebAuditEvent"
type="SamplesAspNet.SampleWebAuditEvent,
webauditevent,Version=1.0.1663.31140,
Culture=neutral,
PublicKeyToken=0d1fa0f69d94de96,
processorArchitecture=MSIL"/>
</eventMappings>
<rules>
<add name="Custom Audit Default"
eventName="SampleWebAuditEvent"
provider="EventLogProvider"
profile="Default"/>
</rules>
</healthMonitoring>
Uwagi
ASP.NET monitorowanie kondycji umożliwia personelowi produkcyjnemu i operacyjnemu zarządzanie wdrożonych aplikacji internetowych. System.Web.Management Przestrzeń nazw zawiera typy zdarzeń kondycji odpowiedzialnych za pakowanie danych o stanie kondycji aplikacji i typów dostawców odpowiedzialnych za przetwarzanie tych danych. Zawiera również typy pomocnicze, które ułatwiają zarządzanie zdarzeniami kondycji.
Klasa WebAuditEvent jest klasą bazową, z której pochodzą klasy zdarzeń monitorowania kondycji ASP.NET monitorowania kondycji. Zdarzenia inspekcji generują informacje o operacjach związanych z zabezpieczeniami w aplikacji internetowej i zapewniają zarówno zdarzenie powodzenia, jak i niepowodzenia dla każdej operacji inspekcji.
System monitorowania kondycji może przeprowadzać inspekcję zarówno pomyślnych, jak i nieudanych zdarzeń, co oznacza, że aplikacja może być monitorowana zarówno pod kątem normalnych, jak i nieprawidłowych warunków. Domyślnie rejestrowane są tylko zdarzenia inspekcji niepowodzeń.
Następujące operacje są poddawane inspekcji przez ASP.NET i mogą generować zdarzenia inspekcji monitorowania kondycji lub powodzenia:
Próby logowania podejmowane przez użytkowników aplikacji ASP.NET. Aby uzyskać więcej informacji na temat tej inspekcji, zobacz WebAuthenticationSuccessAuditEvent i WebSuccessAuditEvent.
Zdarzenia związane z zabezpieczeniami, takie jak błędy uwierzytelniania, nieudane próby dostępu do zasobów i inne zdarzenia związane z zabezpieczeniami. Dziennik tych zdarzeń może być przydatny podczas badania włamania lub ataku na aplikację. Domyślnie nie jest zapewniana obsługa inspekcji w przypadku niepowodzeń autoryzacji użytkowników anonimowych. Aby uzyskać więcej informacji na temat inspekcji zdarzeń awarii, zobacz WebAuthenticationFailureAuditEvent i WebFailureAuditEvent.
Zdarzenia niestandardowe zgłaszane przez aplikację ASP.NET. Zdarzenia niestandardowe można przeprowadzać, rozszerzając funkcjonalność zapewnianą przez klasę WebAuditEvent i klasy pochodne
Uwaga
W większości przypadków będzie można użyć ASP.NET typów monitorowania kondycji zgodnie z implementacją i będziesz kontrolować system monitorowania kondycji, określając wartości w healthMonitoring
sekcji konfiguracji. Możesz również pochodzić z typów monitorowania kondycji, aby utworzyć własne niestandardowe zdarzenia i dostawców. Przykład wyprowadzania z klasy można znaleźć w przykładzie WebAuditEvent podanym w tym temacie.
Uwagi dotyczące dziedziczenia
Podczas formatowania niestandardowych informacji o zdarzeniach do wyświetlania przesłoń metodę FormatCustomEventDetails(WebEventFormatter) , a nie metodę ToString . Pozwoli to uniknąć zastępowania lub manipulowania poufnymi informacjami systemowymi.
Konstruktory
WebAuditEvent(String, Object, Int32) |
Inicjuje WebAuditEvent nowe wystąpienie klasy przy użyciu podanych parametrów. |
WebAuditEvent(String, Object, Int32, Int32) |
Inicjuje WebAuditEvent nowe wystąpienie klasy z określonymi parametrami zdarzenia. |
Właściwości
EventCode |
Pobiera wartość kodu skojarzona ze zdarzeniem. (Odziedziczone po WebBaseEvent) |
EventDetailCode |
Pobiera kod szczegółów zdarzenia. (Odziedziczone po WebBaseEvent) |
EventID |
Pobiera identyfikator skojarzony ze zdarzeniem. (Odziedziczone po WebBaseEvent) |
EventOccurrence |
Pobiera licznik reprezentujący liczbę przypadków wystąpienia zdarzenia. (Odziedziczone po WebBaseEvent) |
EventSequence |
Pobiera liczbę zgłoszonych przez aplikację zdarzeń. (Odziedziczone po WebBaseEvent) |
EventSource |
Pobiera obiekt, który zgłasza zdarzenie. (Odziedziczone po WebBaseEvent) |
EventTime |
Pobiera czas, kiedy zdarzenie zostało podniesione. (Odziedziczone po WebBaseEvent) |
EventTimeUtc |
Pobiera czas, kiedy zdarzenie zostało podniesione. (Odziedziczone po WebBaseEvent) |
Message |
Pobiera komunikat opisujący zdarzenie. (Odziedziczone po WebBaseEvent) |
ProcessInformation |
Pobiera informacje o procesie hostingu aplikacji ASP.NET. (Odziedziczone po WebManagementEvent) |
RequestInformation |
Pobierz informacje skojarzone z żądaniem internetowym. |
Metody
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
FormatCustomEventDetails(WebEventFormatter) |
Zapewnia standardowe formatowanie informacji o zdarzeniu. (Odziedziczone po WebBaseEvent) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
IncrementPerfCounters() |
Używane wewnętrznie do przyrostowych liczników wydajności. (Odziedziczone po WebBaseEvent) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
Raise() |
Zgłasza zdarzenie, powiadamiając dowolnego skonfigurowanego dostawcę o wystąpieniu zdarzenia. (Odziedziczone po WebBaseEvent) |
ToString() |
Formatuje informacje o zdarzeniach do celów wyświetlania. (Odziedziczone po WebBaseEvent) |
ToString(Boolean, Boolean) |
Formatuje informacje o zdarzeniach do celów wyświetlania. (Odziedziczone po WebBaseEvent) |