FileLogTraceListener クラス

定義

ログ出力をファイルに転送する簡単なリスナーを提供します。

public ref class FileLogTraceListener : System::Diagnostics::TraceListener
[System.Runtime.InteropServices.ComVisible(false)]
public class FileLogTraceListener : System.Diagnostics.TraceListener
[<System.Runtime.InteropServices.ComVisible(false)>]
type FileLogTraceListener = class
    inherit TraceListener
Public Class FileLogTraceListener
Inherits TraceListener
継承
FileLogTraceListener
属性

注釈

クラスは FileLogTraceListener 、毎日またはアプリケーションごとに、必要に応じてログ ファイルをアーカイブするための自動メンテナンス機能を提供します。 この自動アーカイブ機能は、開発者と管理者のメンテナンスの責任を軽減するのに役立ちます。

FileLogTraceListenerインスタンスを コレクションまたは Trace.Listeners コレクションにDebug.Listeners追加して、出力をログからテキスト ファイルにリダイレクトできます。 このクラスのインスタンスは、Visual Basic アプリケーションの または My.Log (Web アプリケーションの場合) に追加My.Application.Logすることもできます。 詳細については、「 Walkthrough: Changing Where My.Application.Log Writes Information」を参照してください。

このクラスのメイン機能は次のとおりです。

  1. アーカイブ機能。 このクラスによって生成されるログ ファイルの名前は、基本名と日付に従って、ログ ファイルとログの連続したバージョンを区別するための番号と共に指定されます。 新しいログ ファイルは、必要に応じて作成されます。

    ファイル名の明示的な形式は baseName[-dateStamp][-version].logで、次のようになります。

    • 部分は baseName 、 プロパティで BaseFileName 指定された基本的なログ名です。

    • パーツの形式は dateStamp "YYYY-MM-DD" で、 が または Weeklyの場合にLogFileCreationScheduleDaily表示されます。

    • 同じ baseNamedateStampversion を持つ複数のログ ファイルが必要な場合は、ファイル名に正Integerの 部分 が追加されます。

  2. 複数のクラス インスタンス。 クラスのインスタンスが FileLogTraceListener 使用中のファイルに書き込む場合:

    • クラスは、同じプロセスで クラスの別のインスタンスによって使用されている場合に FileLogTraceListener ファイルを共有します。

    • クラスは、ファイルが別のプロセスで使用されている場合、次に使用できる名前を使用して新しいログ ファイルを作成します。

  3. スレッド セーフ。 クラスは FileLogTraceListener スレッド セーフです。 これにより、ロックを使用せずに、複数のスレッドからログにメッセージを安全に書き込むことができます。

ログ ファイルの場所

  • プロパティは Location 、ログ ファイルを LogFileLocation 書き込む一般的なディレクトリの 1 つを指定する列挙体を受け取ります。

  • ログを別の場所に書き込むには、 プロパティを CustomLocation その場所に設定します。

ログ ファイル名

  • ログ ファイルのベース名は、 プロパティで BaseFileName 指定します。

  • 現在のログ ファイル名は、 プロパティから FullLogFileName 読み取ることができます。 これは、他のいくつかのプロパティと、ファイル システム内のログの現在の状態から派生します。

ログのメンテナンス

  • 新しいログ ファイルを作成するための最小頻度は、 LogFileCreationSchedule プロパティによって決まります。 値が または Weeklyの場合、Daily新しいログ ファイルが毎日または週に少なくとも 1 回作成され、日付スタンプが名前に組み込FullLogFileNameまれます。

  • ログ ファイルの最大サイズ (バイト単位) は、 プロパティによって MaxFileSize 決まります。 ログ ファイルのサイズがこのサイズを超えると、ログに書き込まれた追加のメッセージが破棄され、プロパティに DiskSpaceExhaustedBehavior 応じて例外がスローされます。

  • プロパティは ReserveDiskSpace 、使用可能な空き領域の量 (バイト単位) を決定します。 これにより、クラスが FileLogTraceListener 使用可能なすべてのディスク領域を消費しないようにすることができます。 DiskSpaceExhaustedBehavior空きバイト数未満ReserveDiskSpaceの場合のログ書き込みの動作を指定するには、 プロパティを使用します。

ログ ファイルの出力設定

  • プロパティは AutoFlush 、ログ ファイルへの書き込みのたびに、基になるストリームを自動的にフラッシュするかどうかを指定します。

  • プロパティは Append 、許可されている場合は現在のログ ファイルにメッセージを追加するか、新しいログ ファイルに書き込むかを指定します。

  • プロパティは Delimiter 、ログ メッセージ内のフィールドを区切るために使用する文字列を指定します。

  • プロパティは Encoding 、新しいログ ファイルを作成するときに使用するエンコードを指定します。

ログ ファイルの出力

  • メソッドと TraceEvent メソッドはTraceData、ログ ファイルにメッセージを書き込みます。 これらのメソッドは、 プロパティと同じベース名をLogFileCreationSchedule持つ既存のログをチェックして、新しいログを作成する必要があるかどうかを判断します。

  • メソッドは Flush 、現在出力バッファー内のすべてのメッセージをログ ファイルにフラッシュします。

  • メソッドは Close 、他のプロセスで使用できるようにログ ファイルを閉じます。

出力の有効化

トレース リスナーを使用するには、トレースまたはデバッグを有効にする必要があります。 次の構文はコンパイラ固有です。 C# または Visual Basic 以外のコンパイラを使用する場合は、コンパイラのドキュメントを参照してください。

  • C# でデバッグを有効にするには、コードの /d:DEBUG コンパイル時にコンパイラ コマンド ラインに フラグを追加するか、ファイルの先頭に を追加 #define DEBUG します。 Visual Basic で、 フラグを /d:DEBUG=True コンパイラ コマンド ラインに追加します。

  • C# でトレースを有効にするには、コードの /d:TRACE コンパイル時にコンパイラ コマンド ラインに フラグを追加するか、ファイルの先頭に を追加 #define TRACE します。 Visual Basic で、 フラグを /d:TRACE=True コンパイラ コマンド ラインに追加します。

.NET Framework アプリでは、アプリケーションの構成ファイルを編集してリスナーのレベルを設定できます。 このファイル内では、リスナーの追加、その型の設定、パラメーターの設定、リスナーの削除、またはアプリケーションによって以前に設定されたすべてのリスナーのクリアを行うことができます。 構成ファイルは、次の例のように書式設定する必要があります。

<configuration>  
    <system.diagnostics>  
        <sharedListeners>  
            <add name="FileLog"  
                type="Microsoft.VisualBasic.Logging.FileLogTraceListener,   
                      Microsoft.VisualBasic, Version=8.0.0.0,   
                      Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a,   
                      processorArchitecture=MSIL"   
                initializeData="FileLogWriter"/>  
        </sharedListeners>  
    </system.diagnostics>  
</configuration>  

この例を実行するには、完全修飾アセンブリ名を指定する必要があります。 完全修飾アセンブリ名を取得する方法については、「アセンブリ 名」を参照してください。

コンストラクター

FileLogTraceListener()

既定の名前を使用して、FileLogTraceListener クラスの新しいインスタンスを初期化します。

FileLogTraceListener(String)

指定された名前を使用して、FileLogTraceListener クラスの新しいインスタンスを初期化します。

プロパティ

Append

現在のファイルに追記するか、新しいファイルまたは既存のファイルに出力するかを決定します。

Attributes

アプリケーション構成ファイルに定義されているトレース リスナーのカスタム属性を取得します。

(継承元 TraceListener)
AutoFlush

ログ ファイル ストリームに書き込むたびに、バッファーをフラッシュするかどうかを示します。

BaseFileName

ログ ファイルの基本名を取得または設定します。ログ ファイルの完全名を生成するときに使用されます。

CustomLocation

Location プロパティが Custom に設定されている場合に、ログ ファイルのディレクトリを取得または設定します。

Delimiter

ログ メッセージに使用されているフィールド区切り記号を取得または設定します。

DiskSpaceExhaustedBehavior

ログ ファイルへの出力時に、空きディスク容量が ReserveDiskSpace プロパティに指定された値を下回っていた場合の動作を決定します。

Encoding

新しいログ ファイルを作成する際に使用するエンコーディングを取得または設定します。

Filter

トレース リスナーのトレース フィルターを取得または設定します。

(継承元 TraceListener)
FullLogFileName

現在のログ ファイルの完全名を取得します。

IncludeHostName

ログを記録しているコンピューターのホスト名を出力に含めるかどうかを示します。

IndentLevel

インデント レベルを取得または設定します。

(継承元 TraceListener)
IndentSize

1 つのインデントに含まれるスペースの数を取得または設定します。

(継承元 TraceListener)
IsThreadSafe

トレース リスナーがスレッド セーフかどうかを示す値を取得します。

(継承元 TraceListener)
Location

ログ ファイルの場所を取得または設定します。

LogFileCreationSchedule

ログ ファイルの名前に追加する日付を決定します。

MaxFileSize

ログ ファイルの最大サイズ (バイト単位) を取得または設定します。

Name

この TraceListener の名前を取得または設定します。

(継承元 TraceListener)
NeedIndent

出力にインデントを設定するかどうかを示す値を取得または設定します。

(継承元 TraceListener)
ReserveDiskSpace

確保する空きディスク容量 (バイト単位) を取得または設定します。この容量を下回ると、ログ ファイルにメッセージを出力できなくなります。

TraceOutputOptions

トレース出力オプションを取得または設定します。

(継承元 TraceListener)

メソッド

Close()

現在のログ ファイルに使用されているストリームを閉じ、現在のストリームに関連付けられたすべてのリソースを解放します。

CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。

(継承元 MarshalByRefObject)
Dispose()

TraceListener によって使用されているすべてのリソースを解放します。

(継承元 TraceListener)
Dispose(Boolean)

使用しているストリームを閉じ、選択されたオプションに従って、マネージド リソースを解放します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Fail(String)

TraceListener クラスを実装した場合、作成したリスナーにエラー メッセージを出力します。

(継承元 TraceListener)
Fail(String, String)

TraceListener クラスを実装した場合、作成したリスナーにエラー メッセージと詳細エラー メッセージを出力します。

(継承元 TraceListener)
Flush()

現在のログ ファイルへの書き込みに使用しているストリームをフラッシュします。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()
古い.

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
GetSupportedAttributes()

トレース リスナーによってサポートされるカスタムの XML 構成属性を取得します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
InitializeLifetimeService()
古い.

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。

(継承元 MarshalByRefObject)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

トレース情報、データ オブジェクト、およびイベント情報を出力ファイルまたはストリームに書き込みます。

TraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

トレース情報、データ オブジェクトの配列、およびイベント情報を出力ファイルまたはストリームに書き込みます。

TraceEvent(TraceEventCache, String, TraceEventType, Int32)

トレース情報およびイベント情報をリスナー固有の出力に書き込みます。

(継承元 TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

トレース情報、メッセージ、およびイベント情報を出力ファイルまたはストリームに書き込みます。

TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

トレース情報、書式設定されたオブジェクトの配列、およびイベント情報を出力ファイルまたはストリームに書き込みます。

TraceTransfer(TraceEventCache, String, Int32, String, Guid)

トレース情報、メッセージ、関連するアクティビティ ID、およびイベント情報をリスナー固有の出力に書き込みます。

(継承元 TraceListener)
Write(Object)

オブジェクトの ToString() メソッドの値を、TraceListener クラスを実装した時に作成したリスナーに書き込みます。

(継承元 TraceListener)
Write(Object, String)

カテゴリ名と、オブジェクトの ToString() メソッドの値を、TraceListener クラスを実装するときに作成したリスナーに書き込みます。

(継承元 TraceListener)
Write(String)

文脈情報を付加せずに、メッセージを逐一ディスクに出力します。

Write(String, String)

TraceListener クラスを実装した時に作成したリスナーにカテゴリ名とメッセージを書き込みます。

(継承元 TraceListener)
WriteIndent()

このクラスの実装時に作成したリスナーにインデントを書き込み、NeedIndent プロパティを false にリセットします。

(継承元 TraceListener)
WriteLine(Object)

TraceListener クラスの実装時に作成したリスナーにオブジェクトの ToString() メソッドの値と行終端記号を書き込みます。

(継承元 TraceListener)
WriteLine(Object, String)

TraceListener クラスの実装時に作成したリスナーにカテゴリ名、オブジェクトの ToString() メソッドの値、および行終端記号を書き込みます。

(継承元 TraceListener)
WriteLine(String)

文脈情報を追加せずに、メッセージを逐一ディスクに出力します。現在行の最後に終端記号が追加されます。

WriteLine(String, String)

TraceListener クラスの実装時に作成したリスナーにカテゴリ名、メッセージ、および行終端記号を書き込みます。

(継承元 TraceListener)

適用対象

こちらもご覧ください