0

私はこの質問を読んで、その可能性を知っています: Common.Logging for TraceSource

誰かが例を投稿してください。また、.config ファイルを使用する代わりに、コードで TraceSource を使用するように構成できる場合も役立ちます。

ありがとう

4

1 に答える 1

3

Common.Logging でメッセージを TraceSource に転送することが目標の場合は、ロガー名と tracesource 名が一致する必要があります。

<configuration>
  <configSections>
    <sectionGroup name="common">
      <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
    </sectionGroup>
  </configSections>
  <common>
    <logging>
      <factoryAdapter type="Common.Logging.Simple.TraceLoggerFactoryAdapter, Common.Logging">
        <arg key="level" value="ALL" />
        <arg key="showLogName" value="true" />
        <arg key="showDataTime" value="true" />
        <arg key="dateTimeFormat" value="yyyy/MM/dd HH:mm:ss:fff" />
        <arg key="useTraceSource" value="true" />
      </factoryAdapter>
    </logging>
  </common>
  <system.diagnostics>
    <sources>
      <source name="SomeSourceName" switchName="YourSwitch">
        <listeners>
          <add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="Application"/>
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="YourSwitch" value="Information"/>
    </switches>
  </system.diagnostics>
</configuration>

そして、あなたが書くコードから:

var logger = Common.Logging.LogManager.GetLogger("SomeSourceName");

投稿が 2 か月前で、トレースソースが .config 経由でセットアップされているにもかかわらず、これが役立つことを願っています。

于 2014-01-06T22:06:56.693 に答える