Bagikan melalui


WebManagementEvent Kelas

Definisi

Mendefinisikan kelas dasar untuk peristiwa yang membawa informasi aplikasi dan proses.

public ref class WebManagementEvent : System::Web::Management::WebBaseEvent
public class WebManagementEvent : System.Web.Management.WebBaseEvent
type WebManagementEvent = class
    inherit WebBaseEvent
Public Class WebManagementEvent
Inherits WebBaseEvent
Warisan
WebManagementEvent
Turunan

Contoh

Contoh berikut menunjukkan cara mengimplementasikan peristiwa kustom dengan mendapatkannya dari WebManagementEvent kelas .


using System;
using System.Text;
using System.Web;
using System.Web.Management;

namespace Samples.AspNet.Management
{
    // Implements a custom 
    // WebManagementEvent class. 
    public class SampleWebManagementEvent : 
        WebManagementEvent
    {
        private StringBuilder eventInfo;

        // Invoked in case of events 
        // identified only by their event code.
        public SampleWebManagementEvent(string msg, 
            object eventSource, int eventCode):
        base(msg, eventSource, eventCode)
        {
            // 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 SampleWebManagementEvent(string msg, 
            object eventSource, int eventCode, 
            int eventDetailCode):
          base(msg, eventSource, 
            eventCode, eventDetailCode)
        {
            // Perform custom initialization.
            eventInfo = new StringBuilder();
            eventInfo.Append(string.Format(
                "Event created at: ", 
                EventTime.ToString()));
        }


        // Raises the SampleWebRequestEvent.
        public override void Raise()
        {
            // Perform custom processing. 
            eventInfo.Append(string.Format(
                "Event raised at: ", 
                EventTime.ToString()));
            // Raise the event.
            base.Raise();
        }

        // Obtains the current process information.
        public string GetProcessInfo()
        {
            StringBuilder tempPi = new StringBuilder();
            WebProcessInformation pi = ProcessInformation;
            tempPi.Append(
                pi.ProcessName + Environment.NewLine);
            tempPi.Append(
                pi.ProcessID.ToString() + Environment.NewLine);
            tempPi.Append(
                pi.AccountName + Environment.NewLine);
            return tempPi.ToString();
        }

        public override void FormatCustomEventDetails(
            WebEventFormatter formatter)
        {
            base.FormatCustomEventDetails(formatter);

            // Add custom data.
            formatter.AppendLine("");

            formatter.IndentationLevel += 1;
            formatter.AppendLine(
                "** SampleWebManagementEvent Start **");
          
            // Add custom data.
            formatter.AppendLine(eventInfo.ToString());

            formatter.AppendLine(
                      "** SampleWebManagementEvent End **");
        }
    }
}
Imports System.Text
Imports System.Web
Imports System.Web.Management


' Implements a custom 
' WebManagementEvent class. 

Public Class SampleWebManagementEvent
   Inherits WebManagementEvent
   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)
        MyBase.New(msg, eventSource, eventCode)
        ' 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 eventDetailCode As Integer)
        MyBase.New(msg, eventSource, _
        eventCode, eventDetailCode)
        ' Perform custom initialization.
        eventInfo = New StringBuilder()
        eventInfo.Append(String.Format( _
        "Event created at: ", EventTime.ToString()))
    End Sub
   
   
   ' Raises the SampleWebRequestEvent.
   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 process information.
   Public Function GetProcessInfo() As String
      Dim tempPi As New StringBuilder()
      Dim pi As WebProcessInformation = ProcessInformation
        tempPi.Append( _
        (pi.ProcessName + Environment.NewLine))
        tempPi.Append( _
        (pi.ProcessID.ToString() + Environment.NewLine))
        tempPi.Append( _
        (pi.AccountName + Environment.NewLine))
      Return tempPi.ToString()
   End Function 'GetProcessInfo
   
   
    Public Overrides Sub FormatCustomEventDetails( _
    ByVal formatter As WebEventFormatter)
        MyBase.FormatCustomEventDetails(formatter)

        ' Add custom data.
        formatter.AppendLine("")

        formatter.IndentationLevel += 1
        formatter.AppendLine( _
        "** SampleWebManagementEvent Start **")

        ' Add custom data.
        formatter.AppendLine(eventInfo.ToString())

        formatter.AppendLine( _
        "** SampleWebManagementEvent End **")
    End Sub
End Class

Berikut ini adalah kutipan file konfigurasi yang memungkinkan ASP.NET menggunakan peristiwa kustom.

<healthMonitoring enabled="true"   
  heartBeatInterval="0">  
  <eventMappings>  

    <add  name="SampleWebManagementEvent" type="SamplesAspNet.SampleWebManagementEvent,webmanagementevent,Version=1.0.1573.24438, Culture=neutral, PublicKeyToken=2f5f337ae5c9bdaa, processorArchitecture=MSIL"/>  

  </eventMappings>  
  <rules>  
    <add   
      name="Custom WebManagementEvent"  
      eventName="SampleWebManagementEvent"  
      provider="EventLogProvider"  
      profile="Critical"/>  
  </rules>  
</healthMonitoring>  

Keterangan

ASP.NET pemantauan kesehatan memungkinkan staf produksi dan operasi untuk mengelola aplikasi Web yang disebarkan. Namespace System.Web.Management layanan berisi jenis peristiwa kesehatan yang bertanggung jawab untuk mengemas data status kesehatan aplikasi dan jenis penyedia yang bertanggung jawab untuk memproses data ini. Ini juga berisi jenis pendukung yang membantu selama pengelolaan peristiwa kesehatan.

WebManagementEvent adalah kelas dasar untuk semua jenis peristiwa pemantauan kesehatan ASP.NET. Ini menggunakan WebProcessInformation kelas untuk mendapatkan informasi proses yang tersedia untuk kelas turunannya.

Catatan

Dalam kebanyakan kasus, Anda akan dapat menggunakan jenis pemantauan kesehatan ASP.NET seperti yang diterapkan, dan Anda akan mengontrol sistem pemantauan kesehatan dengan menentukan nilai di bagian healthMonitoring konfigurasi. Anda juga dapat memperoleh dari jenis pemantauan kesehatan untuk membuat peristiwa dan penyedia kustom Anda sendiri. Untuk contoh turunan dari WebManagementEvent kelas, lihat contoh yang disediakan dalam topik ini.

Catatan Bagi Inheritor

Saat memformat informasi peristiwa kustom Anda untuk ditampilkan, ganti FormatCustomEventDetails(WebEventFormatter) metode daripada ToString metode . Ini akan menghindari penimpaan atau perubahan dengan informasi sistem sensitif.

Kode peristiwa yang Anda tentukan untuk peristiwa kustom Anda harus lebih besar dari WebExtendedBase.

Konstruktor

WebManagementEvent(String, Object, Int32)

Menginisialisasi instans WebManagementEvent baru kelas menggunakan parameter yang disediakan.

WebManagementEvent(String, Object, Int32, Int32)

Menginisialisasi instans WebManagementEvent baru kelas menggunakan parameter yang disediakan.

Properti

EventCode

Mendapatkan nilai kode yang terkait dengan peristiwa.

(Diperoleh dari WebBaseEvent)
EventDetailCode

Mendapatkan kode detail peristiwa.

(Diperoleh dari WebBaseEvent)
EventID

Mendapatkan pengidentifikasi yang terkait dengan peristiwa.

(Diperoleh dari WebBaseEvent)
EventOccurrence

Mendapatkan penghitung yang menunjukkan berapa kali peristiwa terjadi.

(Diperoleh dari WebBaseEvent)
EventSequence

Mendapatkan berapa kali peristiwa telah dinaikkan oleh aplikasi.

(Diperoleh dari WebBaseEvent)
EventSource

Mendapatkan objek yang meningkatkan peristiwa.

(Diperoleh dari WebBaseEvent)
EventTime

Mendapatkan waktu ketika acara dinaikkan.

(Diperoleh dari WebBaseEvent)
EventTimeUtc

Mendapatkan waktu ketika acara dinaikkan.

(Diperoleh dari WebBaseEvent)
Message

Mendapatkan pesan yang menjelaskan peristiwa.

(Diperoleh dari WebBaseEvent)
ProcessInformation

Mendapatkan informasi tentang proses hosting aplikasi ASP.NET.

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
FormatCustomEventDetails(WebEventFormatter)

Menyediakan pemformatan standar informasi peristiwa.

(Diperoleh dari WebBaseEvent)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IncrementPerfCounters()

Digunakan secara internal untuk menaikkan penghitung kinerja.

(Diperoleh dari WebBaseEvent)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
Raise()

Memunculkan peristiwa dengan memberi tahu penyedia yang dikonfigurasi bahwa peristiwa telah terjadi.

(Diperoleh dari WebBaseEvent)
ToString()

Memformat informasi peristiwa untuk tujuan tampilan.

(Diperoleh dari WebBaseEvent)
ToString(Boolean, Boolean)

Memformat informasi peristiwa untuk tujuan tampilan.

(Diperoleh dari WebBaseEvent)

Berlaku untuk

Lihat juga