DefaultTraceListenerとは? わかりやすく解説

DefaultTraceListener クラス

トレースの既定の出力メソッドおよび動作を提供します。

名前空間: System.Diagnostics
アセンブリ: System (system.dll 内)
構文構文

Public Class DefaultTraceListener
    Inherits TraceListener
Dim instance As DefaultTraceListener
public class DefaultTraceListener : TraceListener
public ref class DefaultTraceListener : public
 TraceListener
public class DefaultTraceListener extends TraceListener
public class DefaultTraceListener extends
 TraceListener
解説解説
メモメモ

このクラスに適用される HostProtectionAttribute 属性の Resources プロパティの値は、Synchronization です。HostProtectionAttribute は、デスクトップ アプリケーション (一般的には、アイコンをダブルクリック、コマンドを入力、またはブラウザに URL を入力して起動するアプリケーション) には影響しません。詳細については、HostProtectionAttribute クラスのトピックまたは「SQL Server プログラミングとホスト保護属性」を参照してください。

このクラスのインスタンスは、Debug.Listeners コレクションおよび Trace.Listeners コレクションに自動的に追加されます。2 番目の DefaultTraceListener を明示的に追加すると、デバッガの出力ウィンドウに重複するメッセージが表示され、アサート用の重複するメッセージ ボックスが表示されます。

既定では、Write メソッドおよび WriteLine メソッドは、Win32 OutputDebugString 関数と Debugger.Log メソッドにメッセージを出力します。OutputDebugString 関数については、プラットフォーム SDK または MSDN を参照してください。

既定では、Fail メソッドはメッセージ ボックスを表示します (アプリケーションがユーザー インターフェイス モードで実行されているとき)。また、WriteLine を使用してメッセージを出力します。

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

トレース リスナを追加するには、アプリケーション名に対応する構成ファイルを編集します。このファイルでは、リスナの追加、その型とパラメータの設定、リスナの削除、アプリケーションで以前設定されたすべてのリスナのクリアを実行できます。構成ファイルの書式は次の例のようになります。

<configuration>
<system.diagnostics>
  <trace autoflush="false" indentsize="4">
    <listeners>
      <remove name="Default" />
      <add name="myListener"  type="System.Diagnostics.TextWriterTraceListener"
    initializeData="c:\myListener.log" />
    </listeners>
  </trace>
</system.diagnostics>
</configuration>
使用例使用例

確率統計学で使用される値の二項係数を計算するコード例を次に示します。この例では、DefaultTraceListener を使用して結果をトレースし、エラーのログを記録します。新しい DefaultTraceListener を作成し、Trace.Listeners コレクションに追加し、LogFileName プロパティをコマンド ライン引数で指定されたログ ファイルに設定します。

入力パラメータの処理中にエラーが検出されるか、または CalcBinomial 関数によって例外がスローされた場合、Fail メソッドはエラー メッセージのログを記録し、エラー メッセージを表示します。AssertUiEnabled プロパティが false の場合は、コンソールにエラー メッセージも書き込まれます。結果が正しく計算されると、Write(String) メソッドおよび WriteLine(String) メソッドは結果をログ ファイルに書き込みます。

Fail メソッド、Write メソッド、および WriteLine メソッドは、トレース情報を DefaultTraceListener だけに書き込みます。トレースについての情報を Trace.Listeners コレクションのすべてのリスナに書き込むには、Trace クラスの Fail メソッド、Write メソッド、および WriteLine メソッドを使用します。

Imports System
Imports System.Diagnostics
Imports Microsoft.VisualBasic

Module Binomial

    ' args(0) is the number of possibilities for binomial coefficients.
    ' args(1) is the file specification for the trace log file.
    Sub Main(ByVal args() As
 String)

        Dim possibilities As Decimal
        Dim iter As Decimal

        ' Remove the original default trace listener.
        Trace.Listeners.RemoveAt(0)

        ' Create and add a new default trace listener.
        Dim defaultListener As DefaultTraceListener
        defaultListener = New DefaultTraceListener
        Trace.Listeners.Add(defaultListener)

        ' Assign the log file specification from the command line, if
 entered.
        If args.Length >= 2 Then
            defaultListener.LogFileName = args(1)
        End If

        ' Validate the number of possibilities argument.
        If args.Length >= 1 Then

            ' Verify that the argument is a number within the correct
 range.
            Try
                Const MAX_POSSIBILITIES As
 Decimal = 99
                possibilities = Decimal.Parse(args(0))
                If possibilities < 0 Or
 possibilities > MAX_POSSIBILITIES Then
                    Throw New Exception( _
                        String.Format("The
 number of possibilities must " & _
                            "be in the range 0..{0}.",
 MAX_POSSIBILITIES))
                End If
            Catch ex As Exception
                Dim failMessage As String
 = String.Format("""{0}""
 " & _
                    "is not a valid number of possibilities.",
 args(0))
                defaultListener.Fail(failMessage, ex.Message)
                If Not defaultListener.AssertUiEnabled
 Then
                    Console.WriteLine(failMessage & vbCrLf & ex.Message)
                End If
                Return
            End Try
        Else
            ' Report that the required argument is not present.
            Const ENTER_PARAM As String
 = "Enter the number of " & _
                "possibilities as a command line argument."
            defaultListener.Fail(ENTER_PARAM)
            If Not defaultListener.AssertUiEnabled
 Then
                Console.WriteLine(ENTER_PARAM)
            End If
            Return
        End If

        For iter = 0 To possibilities
            Dim result As Decimal
            Dim binomial As String

            ' Compute the next binomial coefficient and handle all exceptions.
            Try
                result = CalcBinomial(possibilities, iter)
            Catch ex As Exception
                Dim failMessage As String
 = String.Format( _
                        "An exception was raised when "
 & _
                        "calculating Binomial( {0}, {1} ).",
 _
                        possibilities, iter)
                defaultListener.Fail(failmessage, ex.Message)
                If Not defaultListener.AssertUiEnabled
 Then
                    Console.WriteLine(failMessage & vbCrLf & ex.Message)
                End If
                Return
            End Try

            ' Format the trace and console output.
            binomial = String.Format("Binomial(
 {0}, {1} ) = ", _
                            possibilities, iter)
            defaultListener.Write(binomial)
            defaultListener.WriteLine(result.ToString)
            Console.WriteLine("{0} {1}", binomial,
 result)
        Next
    End Sub

    Function CalcBinomial(ByVal possibilities
 As Decimal, _
                        ByVal outcomes As Decimal)
 As Decimal

        ' Calculate a binomial coefficient, and minimize the chance
 of overflow.
        Dim result As Decimal
 = 1
        Dim iter As Decimal
        For iter = 1 To possibilities - outcomes
            result *= outcomes + iter
            result /= iter
        Next
        Return result
    End Function
End Module
継承階層継承階層
System.Object
   System.MarshalByRefObject
     System.Diagnostics.TraceListener
      System.Diagnostics.DefaultTraceListener
スレッド セーフスレッド セーフ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
DefaultTraceListener メンバ
System.Diagnostics 名前空間
TraceListener
TextWriterTraceListener
ConsoleTraceListener クラス
Debug クラス
Trace

DefaultTraceListener コンストラクタ

"Default" を Name プロパティ値として使用して、DefaultTraceListener クラスの新しいインスタンスを初期化します。

名前空間: System.Diagnostics
アセンブリ: System (system.dll 内)
構文構文

Dim instance As New DefaultTraceListener
public DefaultTraceListener ()
public:
DefaultTraceListener ()
public DefaultTraceListener ()
public function DefaultTraceListener ()
使用例使用例

アプリケーションによって Trace.Listeners コレクションから提供された DefaultTraceListener を削除し、新しい DefaultTraceListener を作成して、Trace.Listeners コレクションに追加するコード例を次に示します。

' Remove the original default trace listener.
Trace.Listeners.RemoveAt(0)

' Create and add a new default trace listener.
Dim defaultListener As DefaultTraceListener
defaultListener = New DefaultTraceListener
Trace.Listeners.Add(defaultListener)

' Assign the log file specification from the command line, if entered.
If args.Length >= 2 Then
    defaultListener.LogFileName = args(1)
End If
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
DefaultTraceListener クラス
DefaultTraceListener メンバ
System.Diagnostics 名前空間
TraceListener
DefaultTraceListener クラス
ConsoleTraceListener クラス
TextWriterTraceListener
Debug クラス
Trace

DefaultTraceListener プロパティ


パブリック プロパティパブリック プロパティ

プロテクト プロパティプロテクト プロパティ
  名前 説明
プロテクト プロパティ NeedIndent  出力にインデントを設定するかどうかを示す値を取得または設定します。 ( TraceListener から継承されます。)
参照参照

関連項目

DefaultTraceListener クラス
System.Diagnostics 名前空間
TraceListener
TextWriterTraceListener
ConsoleTraceListener クラス
Debug クラス
Trace

DefaultTraceListener メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Close  派生クラスによってオーバーライドされるときに、出力ストリームを終了して、トレース出力またはデバッグ出力を受信しないようにします。 ( TraceListener から継承されます。)
パブリック メソッド CreateObjRef  リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド Dispose  オーバーロードされます。 TraceListener によって使用されているリソースを解放します。 ( TraceListener から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド Fail オーバーロードされます。 オーバーライドされます。 常に失敗するアサーションのメッセージとスタック トレースを出力または表示します。
パブリック メソッド Flush  派生クラスによってオーバーライドされるときに、出力バッファをフラッシュします。 ( TraceListener から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド InitializeLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、有効期間サービス オブジェクトを取得します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
パブリック メソッド TraceData  オーバーロードされます。 トレース データをリスナ固有の出力に書き込みます。 ( TraceListener から継承されます。)
パブリック メソッド TraceEvent  オーバーロードされます。 トレース情報およびイベント情報をリスナ固有の出力に書き込みます。 ( TraceListener から継承されます。)
パブリック メソッド TraceTransfer  トレース情報、メッセージ、関連するアクティビティ ID、およびイベント情報をリスナ固有の出力に書き込みます。 ( TraceListener から継承されます。)
パブリック メソッド Write オーバーロードされます。 リスナにメッセージを書き込みます。
パブリック メソッド WriteLine オーバーロードされます。 リスナにメッセージを書き込み、続けて行終端記号を書き込みます。
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

DefaultTraceListener クラス
System.Diagnostics 名前空間
TraceListener
TextWriterTraceListener
ConsoleTraceListener クラス
Debug クラス
Trace

DefaultTraceListener メンバ

トレースの既定の出力メソッドおよび動作を提供します。

DefaultTraceListener データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド DefaultTraceListener "Default" を Name プロパティ値として使用して、DefaultTraceListener クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
プロテクト プロパティプロテクト プロパティ
  名前 説明
プロテクト プロパティ NeedIndent  出力にインデントを設定するかどうかを示す値を取得または設定します。(TraceListener から継承されます。)
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Close  派生クラスによってオーバーライドされるときに、出力ストリームを終了して、トレース出力またはデバッグ出力を受信しないようにします。 (TraceListener から継承されます。)
パブリック メソッド CreateObjRef  リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 (MarshalByRefObject から継承されます。)
パブリック メソッド Dispose  オーバーロードされます。 TraceListener によって使用されているリソースを解放します。 (TraceListener から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド Fail オーバーロードされます。 オーバーライドされます。 常に失敗するアサーションのメッセージとスタック トレースを出力または表示します。
パブリック メソッド Flush  派生クラスによってオーバーライドされるときに、出力バッファをフラッシュします。 (TraceListener から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 (MarshalByRefObject から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド InitializeLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、有効期間サービス オブジェクトを取得します。 (MarshalByRefObject から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
パブリック メソッド TraceData  オーバーロードされます。 トレース データをリスナ固有の出力に書き込みます。 (TraceListener から継承されます。)
パブリック メソッド TraceEvent  オーバーロードされます。 トレース情報およびイベント情報をリスナ固有の出力に書き込みます。 (TraceListener から継承されます。)
パブリック メソッド TraceTransfer  トレース情報、メッセージ、関連するアクティビティ ID、およびイベント情報をリスナ固有の出力に書き込みます。 (TraceListener から継承されます。)
パブリック メソッド Write オーバーロードされます。 リスナにメッセージを書き込みます。
パブリック メソッド WriteLine オーバーロードされます。 リスナにメッセージを書き込み、続けて行終端記号を書き込みます。
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

DefaultTraceListener クラス
System.Diagnostics 名前空間
TraceListener
TextWriterTraceListener
ConsoleTraceListener クラス
Debug クラス
Trace



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「DefaultTraceListener」の関連用語

DefaultTraceListenerのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



DefaultTraceListenerのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS