共用方式為


BufferedWebEventProvider.ProcessEventFlush(WebEventBufferFlushInfo) 方法

定義

處理緩衝的事件。

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)

參數

flushInfo
WebEventBufferFlushInfo

WebEventBufferFlushInfo,包含緩衝資訊。

範例

下列程式碼範例將示範如何實作 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

備註

ProcessEventFlush方法會處理已緩衝處理的訊息。 當需要清除緩衝區時,ASP.NET 健全狀況監視會呼叫 方法。 需要排清的間隔取決於組態區段中元素中的 providers healthMonitoring 屬性參數值 bufferMode

適用於