1

system.diagnosticすべてのエラーをログファイルに記録するために使用しています

Web.Config:

<system.diagnostics>
    <trace autoflush="true" indentsize="4">
      <listeners>
        <add name="MyListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="MyListenerLog.txt" />
        <remove name="Default" />
      </listeners>
    </trace>

  </system.diagnostics>

コード:

 private static void AddToMyListner(string message)
        {
            try
            {
                System.Diagnostics.Trace.WriteLine("Text: " +message + "," + DateTime.UtcNow);
                System.Diagnostics.Trace.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

ログファイルで、私が最初に取得したログは

no configuration section <common/logging> found - suppressing logging output

このログは一度だけ出力されます。つまり、新しいログ ファイルを作成したときだけ出力されます。私は使用していないCommon.Loggingので、この問題の原因は何なのか疑問に思っていました。

4

1 に答える 1

3

Common.Logging は通常、トレースと統合されています。このエラーが発生し、意図的に Common.Logging を参照していない場合は、Common.Logging を使用し、デフォルトでトレースをサブスクライブする外部ライブラリを参照している可能性があります。構成が整っていない場合 (Common.Logging を使用するつもりはないので合理的)、Common.Logging がトレースに何かが書き込まれたという通知を受け取り、それに対して何をすべきかわからない場合に、これが発生します。

于 2015-01-23T11:09:13.880 に答える