WebApplicationLifetimeEvent Sınıf

Tanım

Bir uygulamanın ömründeki önemli bir olayı temsil eder.

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
Devralma
WebApplicationLifetimeEvent

Örnekler

Aşağıdaki kod örneği, özel bir olay oluşturmak için sınıfından WebApplicationLifetimeEvent türetme işlemini gösterir.


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

Aşağıdaki yapılandırma dosyası alıntısı, yukarıda tanımlanan kodu ASP.NET sistem durumu izleme sistemine eklemek SampleWebApplicationLifetimeEvent için yapılandırma dosyasının bölümünü yapılandırmayı healthMonitoring gösterir. Olayı sisteme eklemek için, bölümüne yeni bir giriş ekleyerek olayı tanımlamanız ve bölüme eventMappings yeni bir giriş ekleyerek olayı bir sağlayıcıyla rules eşlemeniz gerekir.

<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>  

Açıklamalar

ASP.NET sistem durumu izleme, üretim ve operasyon personelinin dağıtılan Web uygulamalarını yönetmesine olanak tanır. Ad alanı, System.Web.Management uygulama sistem durumu verilerini paketlemeden sorumlu sistem durumu olay türlerini ve bu verileri işlemeden sorumlu sağlayıcı türlerini içerir. Ayrıca, sistem durumu olaylarının yönetimi sırasında yardımcı olan destekleyici türler de içerir.

Uygulama ömrü olayları, uygulama başlatma ve kapatma olayları gibi olayları içerir. Bir uygulama sonlandırılırsa, ilgili olay iletisi alanını görüntüleyerek nedenini belirleyebilirsiniz.

Bir WebApplicationLifetimeEvent örnek oluştuğunda, sistem durumu izleme ASP.NET Uygulama Ömrü Olayları performans sayacını güncelleştirir. Aşağıdaki örnekte gösterildiği gibi, nesnesini rules yapılandırma dosyasının healthMonitoring bölümünün alt bölümüne ekleyerek WebApplicationLifetimeEvent bu olayları günlüğe kaydedebilirsiniz.

<rules>  
  <add name="Application Events"  
    eventName="Application Lifetime Events"  
    provider="EventLogProvider"  
    profile="Default"  
    minInterval="00:01:00" />  
</rules>  

Uygulama Ömrü Olayları performans sayacı, tüm ASP.NET yaşam süresi olaylarının toplamını içerir. Bu performans sayacını Sistem İzleyicisi'nde (PerfMon) görüntülemek için Sayaç Ekle penceresinde Performans nesnesi açılan listesinden ASP.NET seçin. Uygulama Ömrü Olayları performans sayacını seçin ve Ekle düğmesine tıklayın. Daha fazla bilgi için MSDN'de "Sistem İzleyicisi'ni (PerfMon) ASP.NET Uygulamalarıyla Kullanma" bölümüne bakın. Olayların standart EventLogWebEventProvidertarafından günlüğe kaydedilmesine izin verirseniz, Uygulama günlüğünü seçerek bunları Olay Görüntüleyicisi'nde görüntüleyebilirsiniz.

Dikkat

WebApplicationLifetimeEvent Nesne yüksek hacimli bir olay olduğundan günlüğe kaydetme işlemi yoğun kaynak kullanır ve sisteminizi yavaşlatabilir. Ayrıca, yüksek hacimli olaylar ve olay günlüğünün EventLogWebEventProvider çalışma şekli nedeniyle sınıfın durumunda diğer olayların üzerine yazılmasını da sağlayabilir.

Not

Çoğu durumda, uygulanan ASP.NET sistem durumu izleme türlerini kullanabilir ve yapılandırma bölümünde değerleri healthMonitoring belirterek sistem durumu izleme sistemini denetleyebilirsiniz. Kendi özel olaylarınızı ve sağlayıcılarınızı oluşturmak için sistem durumu izleme türlerinden de türetebilirsiniz. sınıfından türetme WebApplicationLifetimeEvent örneği için bu konuda sağlanan örne bakın.

Devralanlara Notlar

Görüntü için özel olay bilgilerinizi biçimlendirirken, yöntemi yerine ToString yöntemini geçersiz kılınFormatCustomEventDetails(WebEventFormatter). Bu, hassas sistem bilgilerinin üzerine yazılmasını veya kurcalanmasını önler.

Oluşturucular

WebApplicationLifetimeEvent(String, Object, Int32, Int32)

WebApplicationLifetimeEvent Sağlanan parametreleri kullanarak sınıfı başlatır.

WebApplicationLifetimeEvent(String, Object, Int32)

WebApplicationLifetimeEvent Sağlanan parametreleri kullanarak sınıfı başlatır.

Özellikler

EventCode

Olayla ilişkili kod değerini alır.

(Devralındığı yer: WebBaseEvent)
EventDetailCode

Olay ayrıntı kodunu alır.

(Devralındığı yer: WebBaseEvent)
EventID

Olayla ilişkili tanımlayıcıyı alır.

(Devralındığı yer: WebBaseEvent)
EventOccurrence

Olayın kaç kez gerçekleştiğini gösteren bir sayaç alır.

(Devralındığı yer: WebBaseEvent)
EventSequence

Olayın uygulama tarafından kaç kez tetiklendiğini alır.

(Devralındığı yer: WebBaseEvent)
EventSource

Olayı oluşturan nesneyi alır.

(Devralındığı yer: WebBaseEvent)
EventTime

Olayın tetiklendiği zamanı alır.

(Devralındığı yer: WebBaseEvent)
EventTimeUtc

Olayın tetiklendiği zamanı alır.

(Devralındığı yer: WebBaseEvent)
Message

Olayı açıklayan iletiyi alır.

(Devralındığı yer: WebBaseEvent)
ProcessInformation

ASP.NET uygulama barındırma işlemi hakkında bilgi alır.

(Devralındığı yer: WebManagementEvent)

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
FormatCustomEventDetails(WebEventFormatter)

Olay bilgilerinin standart biçimlendirmesini sağlar.

(Devralındığı yer: WebBaseEvent)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IncrementPerfCounters()

Performans sayaçlarını artırmak için dahili olarak kullanılır.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Raise()

Yapılandırılmış sağlayıcılara olayın gerçekleştiğini bildirerek bir olayı tetikler.

(Devralındığı yer: WebBaseEvent)
ToString()

Olay bilgilerini görüntüleme amacıyla biçimlendirin.

(Devralındığı yer: WebBaseEvent)
ToString(Boolean, Boolean)

Olay bilgilerini görüntüleme amacıyla biçimlendirin.

(Devralındığı yer: WebBaseEvent)

Şunlara uygulanır

Ayrıca bkz.