次の方法で共有


WebEventProvider.Flush メソッド

定義

イベントをプロバイダーのバッファーからイベント ログに移動します。

public:
 abstract void Flush();
public abstract void Flush ();
abstract member Flush : unit -> unit
Public MustOverride Sub Flush ()

Flush メソッドを使用するコード例を次に示します。

// Flush the input buffer if required.
public override void Flush()
{
    // Create a string builder to 
    // hold the event information.
    StringBuilder reData = new StringBuilder();

    // Store custom information.
    reData.Append("SampleEventProvider processing." +
        Environment.NewLine);
    reData.Append("Flush done at: {0}" +
        DateTime.Now.TimeOfDay.ToString() +
        Environment.NewLine);
    
    foreach (WebBaseEvent e in msgBuffer)
    {
        // Store event data.
        reData.Append(e.ToString());
    }

    // Store the information in the specified file.
    StoreToFile(reData, logFilePath, FileMode.Append);

    // Reset the message counter.
    msgCounter = 0;
    
    // Clear the buffer.
    msgBuffer.Clear();
}
' Flush the input buffer if required.
Public Overrides Sub Flush() 
    ' Create a string builder to 
    ' hold the event information.
    Dim reData As New StringBuilder()
    
    ' Store custom information.
    reData.Append( _
    "SampleEventProvider processing." + _
    Environment.NewLine)

    reData.Append( _
    "Flush done at: {0}" + _
    DateTime.Now.TimeOfDay.ToString() + _
    Environment.NewLine)
    
    Dim e As WebBaseEvent
    For Each e In  msgBuffer
        ' Store event data.
        reData.Append(e.ToString())
    Next e
    
    ' Store the information in the specified file.
    StoreToFile(reData, logFilePath, FileMode.Append)
    
    ' Reset the message counter.
    msgCounter = 0
    
    ' Clear the buffer.
    msgBuffer.Clear()

End Sub

注釈

このメソッドが呼び出されると、バッファー内のすべてのイベントは、最後の書き込みから経過した時間やバッファー内のイベントの数に関係なく、バッファーからイベント ログにすぐに移動されます。 最後の書き込みの時刻は、フラッシュ アクションの時刻にリセットされます。

適用対象