FileLogTraceListener FileLogTraceListener FileLogTraceListener FileLogTraceListener Class

定義

ログ出力をファイルに転送する簡単なリスナーを提供します。Provides a simple listener that directs logging output to file.

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

注釈

クラスFileLogTraceListenerは、毎日またはアプリケーションごとに、必要に応じてログファイルをアーカイブするための自動化されたメンテナンス機能を提供します。The FileLogTraceListener class provides automated maintenance capabilities to archive log files as needed, on a daily or per-application basis. この自動アーカイブ機能により、開発者と管理者の責任を軽減できます。This automatic archival functionality helps reduce the maintenance responsibilities of developers and administrators.

FileLogTraceListenerインスタンスをコレクションまたはTrace.ListenersコレクションにDebug.Listeners追加して、出力をテキストファイルにリダイレクトすることができます。An instance of FileLogTraceListener can be added to the Debug.Listeners or Trace.Listeners collections to redirect output from logging to a text file. このクラスのインスタンスは、Visual Basic アプリケーションのMy.Application.LogまたMy.Logは (Web アプリケーションの場合) に追加することもできます。Instances of this class can also be added to My.Application.Log or My.Log (for Web applications) in Visual Basic applications. 詳細については、「チュートリアル:.Log が情報を書き込む場所の変更.For more information, see Walkthrough: Changing Where My.Application.Log Writes Information.

このクラスの主な特徴は次のとおりです。The main features of this class are:

  1. アーカイブ機能Archival functionality. このクラスによって生成されるログファイルには、ベース名と日付に基づいて名前が付けられ、ログファイルを連続したバージョンのログと区別するための数値も指定されます。The log files generated by this class are named according to the base name and the date, along with a number to distinguish the log file from successive versions of the log. 新しいログファイルは、必要に応じて作成されます。New log files are created on an as-needed basis.

    ファイル名の明示的な形式はbaseName[-dateStamp] [-version] .log です。この場合、次のようになります。The explicit form of the file name is baseName[-dateStamp][-version].log, where:

    • 部分は、 BaseFileNameプロパティによって指定される基本的なログ名です。 baseNameThe baseName part is the fundamental log name, specified by the BaseFileName property.

    • このdateStamp部分の形式は "yyyy-mm-dd" で、がDailyまたはWeeklyの場合LogFileCreationScheduleに表示されます。The dateStamp part has the format "YYYY-MM-DD", and it is shown when LogFileCreationSchedule is Daily or Weekly.

    • 同じbaseNamedateStampで複数のログファイルが必要な場合は、ファイル名に正Integerの値が追加されます。 versionIf more than one log file is needed with the same baseName and dateStamp, the version part, a positive Integer, is added to the file name.

  2. 複数のクラスインスタンスMultiple class instances. FileLogTraceListenerクラスのインスタンスが、使用中のファイルに書き込みを行う場合は、次のようになります。If an instance of the FileLogTraceListener class writes to a file that is in use:

    • クラスは、同じプロセスでFileLogTraceListenerクラスの別のインスタンスによって使用されている場合に、ファイルを共有します。The class shares the file if it is being used by another instance of the FileLogTraceListener class in the same process.

    • クラスは、ファイルが別のプロセスによって使用されている場合に、次に使用可能な名前を使用して新しいログファイルを作成します。The class creates a new log file using the next available name if the file is being used by another process.

  3. スレッドセーフThread safety. FileLogTraceListenerクラスはスレッドセーフです。The FileLogTraceListener class is thread safe. これにより、ロックを使用せずに、複数のスレッドからログにメッセージを安全に書き込むことができます。This allows you to safely write messages to the log from multiple threads without using locks.

ログファイルの場所Log-File Location

  • プロパティLocationは、ログLogFileLocationファイルの書き込み先となる一般的なディレクトリの1つを指定する列挙体を受け取ります。The Location property takes a LogFileLocation enumeration to specify one of the typical directories to write the log file to.

  • 別の場所にログを書き込むには、 CustomLocationプロパティをその場所に設定します。To write the log to another location, set the CustomLocation property to that location.

ログファイル名Log-File Name

  • ログファイルの基本名は、 BaseFileNameプロパティによって指定されます。The base name for the log file is specified by the BaseFileName property.

  • 現在のログファイル名は、 FullLogFileNameプロパティから読み取ることができます。The current log file name can be read from the FullLogFileName property. これは、他のいくつかのプロパティと、ファイルシステム内のログの現在の状態から派生します。It is derived from several other properties and the current state of the logs in the file system.

ログのメンテナンスLog Maintenance

  • 新しいログファイルを作成する頻度の最小値は、 LogFileCreationScheduleプロパティによって決まります。The minimum frequency for creating new log files is determined by the LogFileCreationSchedule property. 値がDailyまたはWeeklyの場合は、新しいログファイルが1日または1週間に1回以上作成され、そのFullLogFileName名前に日付スタンプが組み込まれます。When the value is Daily or Weekly, a new log file is created at least once every day or week, and a date stamp is incorporated into the FullLogFileName name.

  • ログファイルの最大サイズ (バイト単位) は、 MaxFileSizeプロパティによって決まります。The maximum size (in bytes) of the log file is determined by the MaxFileSize property. ログファイルのサイズがこのサイズを超えると、ログに書き込まれた追加のメッセージは破棄さDiskSpaceExhaustedBehaviorれ、プロパティによっては例外がスローされます。If the log file size exceeds this size, additional messages written to the log are discarded and, depending on the DiskSpaceExhaustedBehavior property, an exception is thrown.

  • プロパティReserveDiskSpaceは、使用可能な空き領域のサイズ (バイト単位) を決定します。The ReserveDiskSpace property determines how much free space (in bytes) must be available. これにより、使用FileLogTraceListener可能なすべてのディスク領域をクラスで使用しないようにすることができます。This helps ensure that the FileLogTraceListener class will not consume all available disk space. プロパティを使用して、空きReserveDiskSpaceバイト数が不足している場合のログ書き込みの動作を指定します。 DiskSpaceExhaustedBehaviorUse the DiskSpaceExhaustedBehavior property to specify the behavior of log writes when there are less than ReserveDiskSpace bytes free.

ログファイルの出力設定Log-File Output Settings

  • プロパティAutoFlushは、ログファイルへの書き込みのたびに、基になるストリームを自動的にフラッシュするかどうかを指定します。The AutoFlush property specifies whether the underlying stream should be flushed automatically after each write to the log file.

  • プロパティAppendは、メッセージを現在のログファイルに追加するか (許可されている場合)、新しいログファイルに書き込むかを指定します。The Append property specifies whether to append messages to the current log file, if allowed, or write them to a new log file.

  • プロパティDelimiterは、ログメッセージ内のフィールドを区切るために使用する文字列を指定します。The Delimiter property specifies the string to use for delimiting the fields within a log message.

  • プロパティEncodingは、新しいログファイルを作成するときに使用するエンコーディングを指定します。The Encoding property specifies the encoding to use when creating a new log file.

ログファイルの出力Log-File Output

  • メソッドTraceDataTraceEventメソッドは、ログファイルにメッセージを書き込みます。The TraceData and TraceEvent methods write messages to the log file. これらのメソッドはLogFileCreationSchedule 、新しいログを作成する必要があるかどうかを判断するために、同じ基本名を持つ既存のログと共に、プロパティを確認します。These methods check the LogFileCreationSchedule property, along with any existing logs with the same base name to determine if a new log should be created.

  • メソッドFlushは、出力バッファー内の現在のすべてのメッセージをログファイルにフラッシュします。The Flush method flushes any messages currently in the output buffer to the log file.

  • メソッドCloseは、他のプロセスで使用できるようにログファイルを閉じます。The Close method closes the log file so that it can be used by other processes.

出力の有効化Enabling Output

トレースリスナーを使用するには、トレースまたはデバッグを有効にする必要があります。You must enable tracing or debugging to use a trace listener. 次の構文はコンパイラ固有です。The following syntax is compiler specific. または Visual Basic 以外C#のコンパイラを使用する場合は、コンパイラのドキュメントを参照してください。If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler.

  • でC#デバッグを有効にするに/d:DEBUGは、コードのコンパイル時にコンパイラのコマンドラインにフラグを追加する#define DEBUGか、ファイルの先頭にを追加します。To enable debugging in C#, add the /d:DEBUG flag to the compiler command line when you compile your code, or you can add #define DEBUG to the top of your file. Visual Basic で、コンパイラの/d:DEBUG=Trueコマンドラインにフラグを追加します。In Visual Basic, add the /d:DEBUG=True flag to the compiler command line.

  • でC#トレースを有効にするに/d:TRACEは、コードをコンパイルするときにコンパイラのコマンドラインにフラグ#define TRACEを追加するか、ファイルの先頭にを追加します。To enable tracing in C#, add the /d:TRACE flag to the compiler command line when you compile your code, or add #define TRACE to the top of your file. Visual Basic で、コンパイラの/d:TRACE=Trueコマンドラインにフラグを追加します。In Visual Basic, add the /d:TRACE=True flag to the compiler command line.

リスナーのレベルを設定するには、アプリケーションの構成ファイルを編集します。To set the level of your listener, edit the configuration file for your application. このファイル内で、リスナーを追加したり、その型を設定したり、パラメーターを設定したり、リスナーを削除したり、アプリケーションによって以前に設定されたすべてのリスナーをクリアしたりできます。Within this file, you can add a listener, set its type and set its parameters, remove a listener, or clear all the listeners previously set by the application. 構成ファイルは、次の例のように書式設定する必要があります。The configuration file should be formatted like the following example.

この例を実行するには、完全修飾アセンブリ名を指定する必要があります。For this example to run, you must provide the fully qualified assembly name. 完全修飾アセンブリ名を取得する方法については、「アセンブリ名」を参照してください。For information about how to obtain the fully qualified assembly name, see Assembly Names.

<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() FileLogTraceListener()

既定の名前を使用して、FileLogTraceListener クラスの新しいインスタンスを初期化します。Initializes a new instance of the FileLogTraceListener class with the default name.

FileLogTraceListener(String) FileLogTraceListener(String) FileLogTraceListener(String) FileLogTraceListener(String)

指定された名前を使用して、FileLogTraceListener クラスの新しいインスタンスを初期化します。Initializes a new instance of the FileLogTraceListener class with the supplied name.

プロパティ

Append Append Append Append

現在のファイルに追記するか、新しいファイルに出力するかを決定します。Determines whether to append the output to the current file or write it to a new file.

Attributes Attributes Attributes Attributes

アプリケーション構成ファイルに定義されているカスタム トレース リスナー属性を取得します。Gets the custom trace listener attributes defined in the application configuration file.

(Inherited from TraceListener)
AutoFlush AutoFlush AutoFlush AutoFlush

ログ ファイル ストリームに書き込むたびに、バッファーをフラッシュするかどうかを示します。Indicates whether or not the writing to the log file stream flushes the buffer.

BaseFileName BaseFileName BaseFileName BaseFileName

ログ ファイルの基本名を取得または設定します。ログ ファイルの完全名を生成するときに使用されます。Gets or sets the base name for the log files, which is used to create the full log-file name.

CustomLocation CustomLocation CustomLocation CustomLocation

Location プロパティが Custom に設定されている場合に、ログ ファイルのディレクトリを取得または設定します。Gets or sets the log file directory when the Location property is set to Custom.

Delimiter Delimiter Delimiter Delimiter

ログ メッセージに使用されているフィールド区切り記号を取得または設定します。Gets or sets the delimiter used to delimit fields within a log message.

DiskSpaceExhaustedBehavior DiskSpaceExhaustedBehavior DiskSpaceExhaustedBehavior DiskSpaceExhaustedBehavior

ログ ファイルへの出力時に、空きディスク容量が ReserveDiskSpace プロパティに指定された値を下回っていた場合の動作を決定します。Determines what to do when writing to the log file and there is less free disk space available than specified by the ReserveDiskSpace property.

Encoding Encoding Encoding Encoding

新しいログ ファイルを作成する際に使用するエンコーディングを取得または設定します。Gets or sets the encoding to use when creating a new log file.

Filter Filter Filter Filter

トレース リスナーのトレース フィルターを取得または設定します。Gets or sets the trace filter for the trace listener.

(Inherited from TraceListener)
FullLogFileName FullLogFileName FullLogFileName FullLogFileName

現在のログ ファイルの完全名を取得します。Gets the current full log-file name.

IncludeHostName IncludeHostName IncludeHostName IncludeHostName

ログを記録しているコンピューターのホスト名を出力に含めるかどうかを示します。Indicates whether or not the host name of the logging machine should be included in the output.

IndentLevel IndentLevel IndentLevel IndentLevel

インデント レベルを取得または設定します。Gets or sets the indent level.

(Inherited from TraceListener)
IndentSize IndentSize IndentSize IndentSize

1 つのインデントに含まれるスペースの数を取得または設定します。Gets or sets the number of spaces in an indent.

(Inherited from TraceListener)
IsThreadSafe IsThreadSafe IsThreadSafe IsThreadSafe

トレース リスナーがスレッド セーフかどうかを示す値を取得します。Gets a value indicating whether the trace listener is thread safe.

(Inherited from TraceListener)
Location Location Location Location

ログ ファイルの場所を取得または設定します。Gets or sets location for the log files.

LogFileCreationSchedule LogFileCreationSchedule LogFileCreationSchedule LogFileCreationSchedule

ログ ファイルの名前に追加する日付を決定します。Determines which date to include in the names of the log files.

MaxFileSize MaxFileSize MaxFileSize MaxFileSize

ログ ファイルの最大サイズ (バイト単位) を取得または設定します。Gets or sets the maximum allowed size of the log file, in bytes.

Name Name Name Name

この TraceListener の名前を取得または設定します。Gets or sets a name for this TraceListener.

(Inherited from TraceListener)
NeedIndent NeedIndent NeedIndent NeedIndent

出力にインデントを設定するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether to indent the output.

(Inherited from TraceListener)
ReserveDiskSpace ReserveDiskSpace ReserveDiskSpace ReserveDiskSpace

確保する空きディスク容量 (バイト単位) を取得または設定します。この容量を下回ると、ログ ファイルにメッセージを出力できなくなります。Gets or sets the amount of free disk space, in bytes, necessary before messages can be written to the log file.

TraceOutputOptions TraceOutputOptions TraceOutputOptions TraceOutputOptions

トレース出力オプションを取得または設定します。Gets or sets the trace output options.

(Inherited from TraceListener)

メソッド

Close() Close() Close() Close()

現在のログ ファイルに使用されているストリームを閉じ、現在のストリームに関連付けられたすべてのリソースを解放します。Closes the underlying stream for the current log file and releases any resources associated with the current stream.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

TraceListener によって使用されているすべてのリソースを解放します。Releases all resources used by the TraceListener.

(Inherited from TraceListener)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

使用しているストリームを閉じ、選択されたオプションに従って、マネージド リソースを解放します。Closes the underlying stream and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
Fail(String) Fail(String) Fail(String) Fail(String)

TraceListener クラスの実装時に、作成したリスナーにエラー メッセージを出力します。Emits an error message to the listener you create when you implement the TraceListener class.

(Inherited from TraceListener)
Fail(String, String) Fail(String, String) Fail(String, String) Fail(String, String)

TraceListener クラスの実装時に、作成したリスナーにエラー メッセージと詳細エラー メッセージを出力します。Emits an error message and a detailed error message to the listener you create when you implement the TraceListener class.

(Inherited from TraceListener)
Flush() Flush() Flush() Flush()

現在のログ ファイルへの書き込みに使用しているストリームをフラッシュします。Flushes the underlying stream that writes to the current log file.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetSupportedAttributes() GetSupportedAttributes() GetSupportedAttributes() GetSupportedAttributes()

トレース リスナーによってサポートされるカスタムの XML 構成属性を取得します。Gets the custom XML configuration attributes supported by the trace listener.

GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object) TraceData(TraceEventCache, String, TraceEventType, Int32, Object) TraceData(TraceEventCache, String, TraceEventType, Int32, Object) TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

トレース情報、データ オブジェクト、およびイベント情報を出力ファイルまたはストリームに書き込みます。Writes trace information, a data object, and event information to the output file or stream.

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

トレース情報、データ オブジェクトの配列、およびイベント情報を出力ファイルまたはストリームに書き込みます。Writes trace information, an array of data objects, and event information to the output file or stream.

TraceEvent(TraceEventCache, String, TraceEventType, Int32) TraceEvent(TraceEventCache, String, TraceEventType, Int32) TraceEvent(TraceEventCache, String, TraceEventType, Int32) TraceEvent(TraceEventCache, String, TraceEventType, Int32)

トレース情報およびイベント情報をリスナー固有の出力に書き込みます。Writes trace and event information to the listener specific output.

(Inherited from TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String) TraceEvent(TraceEventCache, String, TraceEventType, Int32, String) TraceEvent(TraceEventCache, String, TraceEventType, Int32, String) TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

トレース情報、メッセージ、およびイベント情報を出力ファイルまたはストリームに書き込みます。Writes trace information, a message and event information to the output file or stream.

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

トレース情報、書式設定されたオブジェクトの配列、およびイベント情報を出力ファイルまたはストリームに書き込みます。Writes trace information, a formatted array of objects, and event information to the output file or stream.

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

トレース情報、メッセージ、関連するアクティビティ ID、およびイベント情報をリスナー固有の出力に書き込みます。Writes trace information, a message, a related activity identity and event information to the listener specific output.

(Inherited from TraceListener)
Write(Object) Write(Object) Write(Object) Write(Object)

ToString() クラスの実装時に、作成したリスナーにオブジェクトの TraceListener メソッドの値を書き込みます。Writes the value of the object's ToString() method to the listener you create when you implement the TraceListener class.

(Inherited from TraceListener)
Write(Object, String) Write(Object, String) Write(Object, String) Write(Object, String)

ToString() クラスの実装時に、作成したリスナーにカテゴリ名とオブジェクトの TraceListener メソッドの値を書き込みます。Writes a category name and the value of the object's ToString() method to the listener you create when you implement the TraceListener class.

(Inherited from TraceListener)
Write(String) Write(String) Write(String) Write(String)

文脈情報を付加せずに、メッセージを逐一ディスクに出力します。Writes a verbatim message to disk, without any additional context information.

Write(String, String) Write(String, String) Write(String, String) Write(String, String)

TraceListener クラスの実装時に、作成したリスナーにカテゴリ名とメッセージを書き込みます。Writes a category name and a message to the listener you create when you implement the TraceListener class.

(Inherited from TraceListener)
WriteIndent() WriteIndent() WriteIndent() WriteIndent()

このクラスの実装時に作成したリスナーにインデントを書き込み、NeedIndent プロパティを false にリセットします。Writes the indent to the listener you create when you implement this class, and resets the NeedIndent property to false.

(Inherited from TraceListener)
WriteLine(Object) WriteLine(Object) WriteLine(Object) WriteLine(Object)

ToString() クラスの実装時に、作成したリスナーにオブジェクトの TraceListener メソッドの値と行終端記号を書き込みます。Writes the value of the object's ToString() method to the listener you create when you implement the TraceListener class, followed by a line terminator.

(Inherited from TraceListener)
WriteLine(Object, String) WriteLine(Object, String) WriteLine(Object, String) WriteLine(Object, String)

ToString() クラスの実装時に、作成したリスナーにカテゴリ名、オブジェクトの TraceListener メソッドの値、および行終端記号を書き込みます。Writes a category name and the value of the object's ToString() method to the listener you create when you implement the TraceListener class, followed by a line terminator.

(Inherited from TraceListener)
WriteLine(String) WriteLine(String) WriteLine(String) WriteLine(String)

文脈情報を追加せずに、メッセージを逐一ディスクに出力します。現在行の最後に終端記号が追加されます。Writes a verbatim message to disk, followed by the current line terminator, without any additional context information.

WriteLine(String, String) WriteLine(String, String) WriteLine(String, String) WriteLine(String, String)

TraceListener クラスの実装時に、作成したリスナーにカテゴリ名、メッセージ、および行終端記号を書き込みます。Writes a category name and a message to the listener you create when you implement the TraceListener class, followed by a line terminator.

(Inherited from TraceListener)

適用対象

こちらもご覧ください