DefaultTraceListener クラスとアプリケーション設定ファイル

DefaultTraceListener にはいくつかのプロパティがあり、出力のカスタマイズが可能になっているが、プロジェクトのルートに app.config という名前で XML ファイルを作成し、*1

<Configuration>
  <System.Diagnostics>
    <LogFilename>log.txt</LogFilename>
  </System.Diagnostics>
</Configuration>

のような記述を加えることでもう少しカスタマイズの幅を広げることができるようになっている。*2
上記の例では、LogFilename プロパティを設定していて、このプロパティにファイル名を指定していると DefaultTraceListener は指定されたファイルへ出力を追記するようになっている。

AssertUIEnabled(bool)
同名のプロパティと同じ
AutoFlush(true)
true に設定すると Write() や WriteLine() のたびに Flush() を呼び出す。
IndentSize(int)
インデントに使用するスペースの数。デフォルトは 4
LogFilename(string)
指定されたファイルへ出力を追記する。
Switches
BooleanSwitch と TraceSwitch の設定

他にも、System.Diagnostics 名前空間用に DefaultTraceListener とは関係ない設定も存在する。

*1:SDK 環境では、実行ファイルの名前が foo.exe であれば、foo.exe.config というファイル名で実行ファイルと同じ場所に作成する必要がある

*2:これは実行環境すべてで有効化される記述となるが、開発環境でのみ有効な記述方法なんてのもある