WebApplicationLifetimeEvent 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.
Reprezentuje znaczące zdarzenie w okresie istnienia aplikacji.
public ref class WebApplicationLifetimeEvent : System::Web::Management::WebManagementEvent
public class WebApplicationLifetimeEvent : System.Web.Management.WebManagementEvent
type WebApplicationLifetimeEvent = class
inherit WebManagementEvent
Public Class WebApplicationLifetimeEvent
Inherits WebManagementEvent
- Dziedziczenie
Przykłady
W poniższym przykładzie kodu pokazano, jak pochodzić z klasy w WebApplicationLifetimeEvent celu utworzenia zdarzenia niestandardowego.
using System;
using System.Text;
using System.Web;
using System.Web.Management;
namespace SamplesAspNet
{
// Implements a custom WebManagementEvent class.
public class SampleWebApplicationLifetimeEvent :
System.Web.Management.WebApplicationLifetimeEvent
{
private string customCreatedMsg, customRaisedMsg;
// Invoked in case of events identified only by
// their event code.
public SampleWebApplicationLifetimeEvent(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 related event detailed code.
public SampleWebApplicationLifetimeEvent(string msg,
object eventSource, int eventCode,
int eventDetailCode):
base(msg, eventSource, eventCode, eventDetailCode)
{
// Perform custom initialization.
customCreatedMsg =
string.Format("Event created at: {0}",
DateTime.Now.TimeOfDay.ToString());
}
// Raises the SampleWebRequestEvent.
public override void Raise()
{
// Perform custom processing.
customRaisedMsg = string.Format(
"Event raised at: {0}\n",
DateTime.Now.TimeOfDay.ToString());
// Raise the event.
base.Raise();
}
//Formats Web request event information.
public override void FormatCustomEventDetails(
WebEventFormatter formatter)
{
base.FormatCustomEventDetails(formatter);
// Add custom data.
formatter.AppendLine("");
formatter.IndentationLevel += 1;
formatter.TabSize = 4;
formatter.AppendLine(
"*SampleWebApplicationLifetimeEvent Start *");
formatter.AppendLine("Custom information goes here");
formatter.AppendLine(
"* SampleWebApplicationLifetimeEvent End *");
// Display custom event timing.
formatter.AppendLine(customCreatedMsg);
formatter.AppendLine(customRaisedMsg);
formatter.IndentationLevel -= 1;
}
}
}
Imports System.Text
Imports System.Web
Imports System.Web.Management
' Implements a custom WebManagementEvent class.
Public Class SampleWebApplicationLifetimeEvent
Inherits System.Web.Management.WebApplicationLifetimeEvent
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 related event detailed code.
Public Sub New(ByVal msg As String, _
ByVal eventSource As Object, _
ByVal eventCode As Integer, _
ByVal eventDetailCode As Integer)
MyBase.New(msg, eventSource, _
eventCode, eventDetailCode)
' Perform custom initialization.
customCreatedMsg = _
String.Format("Event created at: {0}", _
DateTime.Now.TimeOfDay.ToString())
End Sub
' Raises the SampleWebRequestEvent.
Public Overrides Sub Raise()
' Perform custom processing.
customRaisedMsg = _
String.Format("Event raised at: {0}" + _
vbLf, DateTime.Now.TimeOfDay.ToString())
' Raise the event.
MyBase.Raise()
End Sub
'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.TabSize = 4
formatter.AppendLine( _
"*SampleWebApplicationLifetimeEvent Start *")
formatter.AppendLine("Custom information goes here")
formatter.AppendLine( _
"* SampleWebApplicationLifetimeEvent End *")
' Display custom event timing.
formatter.AppendLine(customCreatedMsg)
formatter.AppendLine(customRaisedMsg)
formatter.IndentationLevel -= 1
End Sub
End Class
Poniższy fragment pliku konfiguracji pokazuje, jak skonfigurować healthMonitoring
sekcję pliku konfiguracji, aby dodać SampleWebApplicationLifetimeEvent
kod zdefiniowany powyżej do systemu monitorowania kondycji ASP.NET. Aby dodać zdarzenie do systemu, należy zdefiniować zdarzenie, dodając nowy wpis do eventMappings
sekcji i mapując zdarzenie na dostawcę, dodając nowy wpis do rules
sekcji.
<healthMonitoring
enabled="true"
heartBeatInterval="0">
<eventMappings>
<clear />
<!-- Configure the application lifetime event -->
<!-- object to handle the Web application events. -->
<add name="SampleApplicationLifetimeEvents"
type="System.Web.Management.SampleWebApplicationLifetimeEvent,
System.Web,Version=2.0.3600.0,
Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a" />
</eventMappings>
<rules>
<clear/>
// Configure the connection between the
// application lifetime event object
// and the provider that must process it.
<add name="Custom Application Events"
eventName="SampleApplicationLifetimeEvents"
provider="EventLogProvider"
profile="Default"
minInterval="00:01:00" />
</rules>
</healthMonitoring>
Uwagi
ASP.NET monitorowanie kondycji umożliwia pracownikom produkcyjnym i operacyjnym zarządzanie wdrożonych aplikacji internetowych. System.Web.Management Przestrzeń nazw zawiera typy zdarzeń kondycji odpowiedzialne za pakowanie danych o stanie kondycji aplikacji i typów dostawców odpowiedzialnych za przetwarzanie tych danych. Zawiera również typy pomocnicze, które pomagają podczas zarządzania zdarzeniami kondycji.
Zdarzenia okresu istnienia aplikacji obejmują zdarzenia, takie jak zdarzenia uruchamiania aplikacji i zamykania. Jeśli aplikacja zostanie zakończona, możesz określić, dlaczego, wyświetlając powiązane pole komunikatu o zdarzeniu.
W przypadku WebApplicationLifetimeEvent wystąpienia ASP.NET monitorowanie kondycji aktualizuje licznik wydajności zdarzeń okresu istnienia aplikacji. Te zdarzenia można rejestrować, dodając WebApplicationLifetimeEvent obiekt do rules
podsekcji healthMonitoring
sekcji pliku konfiguracji, jak pokazano w poniższym przykładzie.
<rules>
<add name="Application Events"
eventName="Application Lifetime Events"
provider="EventLogProvider"
profile="Default"
minInterval="00:01:00" />
</rules>
Licznik wydajności zdarzenia okresu istnienia aplikacji zawiera sumę wszystkich zdarzeń okresu istnienia ASP.NET. Aby wyświetlić ten licznik wydajności w monitorze systemu (PerfMon), w oknie Dodawanie liczników wybierz ASP.NET z listy rozwijanej Obiekt wydajności . Wybierz licznik wydajności zdarzeń okresu istnienia aplikacji , a następnie kliknij przycisk Dodaj . Aby uzyskać więcej informacji, zobacz "Using the System Monitor (PerfMon) with ASP.NET Applications" (Używanie monitora systemu (PerfMon) z aplikacjami ASP.NET" w witrynie MSDN. Jeśli zezwolisz na rejestrowanie zdarzeń według standardu EventLogWebEventProvider, możesz je wyświetlić w Podglądzie zdarzeń , wybierając dziennik aplikacji .
Przestroga
WebApplicationLifetimeEvent Ponieważ obiekt jest zdarzeniem o dużej ilości, rejestrowanie go intensywnie obciąża zasoby i może spowolnić działanie systemu. Może również spowodować zastąpienie innych zdarzeń w przypadku EventLogWebEventProvider klasy z powodu dużej liczby zdarzeń i sposobu działania rejestrowania zdarzeń.
Uwaga
W większości przypadków będzie można użyć ASP.NET typów monitorowania kondycji zgodnie z implementacją i będzie kontrolować system monitorowania kondycji, określając wartości w healthMonitoring
sekcji konfiguracji. Możesz również pochodzić z typów monitorowania kondycji w celu utworzenia własnych niestandardowych zdarzeń i dostawców. Przykład wyprowadzania z klasy można znaleźć w przykładzie WebApplicationLifetimeEvent podanym w tym temacie.
Uwagi dotyczące dziedziczenia
Podczas formatowania niestandardowych informacji o zdarzeniu do wyświetlenia zastąpij metodę FormatCustomEventDetails(WebEventFormatter) zamiast ToString metody . Pozwoli to uniknąć zastępowania lub manipulowania poufnymi informacjami o systemie.
Konstruktory
WebApplicationLifetimeEvent(String, Object, Int32, Int32) |
Inicjuje klasę WebApplicationLifetimeEvent przy użyciu podanych parametrów. |
WebApplicationLifetimeEvent(String, Object, Int32) |
Inicjuje klasę WebApplicationLifetimeEvent przy użyciu podanych parametrów. |
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) |
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 bieżące wystąpienie. (Odziedziczone po Object) |
IncrementPerfCounters() |
Używane wewnętrznie do przyrostowych liczników wydajności. |
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) |