1

私が解決しようとしている興味深い問題。ここでは、iis7 で実行されている単純な wcf サービスを取得しました。common.logging に関連するコードは次のようになります。

using Common.Logging;

private static readonly ILog log = LogManager.GetCurrentClassLogger();

log.Error("Opened Sagas Monitoring Service: {0}", ex);

web.config 構成:

<configSections>
<sectionGroup name="commonLogging">
  <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>

<commonLogging>
<logging>
  <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net">
    <arg key="configType" value="FILE-WATCH" />
    <arg key="configFile" value="~/log4net.config" />
  </factoryAdapter>
</logging>

log4net.config は、必要なすべてのアセンブリを含む web.config と同じ展開フォルダーにあります。

ということで本題は次へ。サービスを呼び出した後、ロガーは作成されません。そして例外はありません。ただし、サービスがオンで、展開フォルダー内の web.config ファイルを変更すると、すぐにロガーが取得されます。問題は FactoryAdapter にあるようです。何か案は?

4

0 に答える 0