Sdílet prostřednictvím


BufferedWebEventProvider.ProcessEventFlush(WebEventBufferFlushInfo) Metoda

Definice

Zpracovává události v vyrovnávací paměti.

public:
 abstract void ProcessEventFlush(System::Web::Management::WebEventBufferFlushInfo ^ flushInfo);
public abstract void ProcessEventFlush (System.Web.Management.WebEventBufferFlushInfo flushInfo);
abstract member ProcessEventFlush : System.Web.Management.WebEventBufferFlushInfo -> unit
Public MustOverride Sub ProcessEventFlush (flushInfo As WebEventBufferFlushInfo)

Parametry

flushInfo
WebEventBufferFlushInfo

A WebEventBufferFlushInfo obsahující informace o ukládání do vyrovnávací paměti.

Příklady

Následující příklad kódu ukazuje, jak implementovat metodu ProcessEventFlush .


// Processes the messages that have been buffered.
// It is called by the ASP.NET when the flushing of 
// the buffer is required.
public override void ProcessEventFlush(
    WebEventBufferFlushInfo flushInfo)
{

    // Customize event information to be sent to 
    // the Windows Event Viewer Application Log.
    customInfo.AppendLine(
        "SampleEventLogWebEventProvider buffer flush.");

    customInfo.AppendLine(
        string.Format("NotificationType: {0}",
        GetNotificationType(flushInfo)));

    customInfo.AppendLine(
        string.Format("EventsInBuffer: {0}",
        GetEventsInBuffer(flushInfo)));

    customInfo.AppendLine(
        string.Format(
        "EventsDiscardedSinceLastNotification: {0}",
        GetEventsDiscardedSinceLastNotification(flushInfo)));

    // Read each buffered event and send it to the
    // Application Log.
    foreach (WebBaseEvent eventRaised in flushInfo.Events)
        customInfo.AppendLine(eventRaised.ToString());

    // Store the information in the specified file.
    StoreToFile(customInfo, logFilePath, FileMode.Append);
}
    ' Processes the messages that have been buffered.
    ' It is called by the ASP.NET when the flushing of 
    ' the buffer is required according to the parameters 
    ' defined in the <bufferModes> element of the 
    ' <healthMonitoring> configuration section.
    Public Overrides Sub ProcessEventFlush(ByVal flushInfo _
    As WebEventBufferFlushInfo)

        ' Customize event information to be sent to 
        ' the Windows Event Viewer Application Log.
        customInfo.AppendLine( _
        "SampleEventLogWebEventProvider buffer flush.")

        customInfo.AppendLine(String.Format( _
        "NotificationType: {0}", _
        GetNotificationType(flushInfo)))

        customInfo.AppendLine(String.Format( _
        "EventsInBuffer: {0}", _
        GetEventsInBuffer(flushInfo)))

        customInfo.AppendLine(String.Format( _
        "EventsDiscardedSinceLastNotification: {0}", _
GetEventsDiscardedSinceLastNotification( _
flushInfo)))

        ' Read each buffered event and send it to the
        ' Application Log.
        Dim eventRaised As WebBaseEvent
        For Each eventRaised In flushInfo.Events
            customInfo.AppendLine(eventRaised.ToString())
        Next eventRaised
        ' Store the information in the specified file.
        StoreToFile(customInfo, logFilePath, _
        FileMode.Append)
    End Sub

Poznámky

Metoda ProcessEventFlush zpracovává zprávy, které byly do vyrovnávací paměti. ASP.NET monitorování stavu volá metodu, když je vyžadováno vyprázdnění vyrovnávací paměti. Intervaly, ve kterých se vyprázdnění vyžaduje, je určena hodnotou bufferMode parametru atributu v elementu v providers oddílu healthMonitoring konfigurace.

Platí pro