2つのインスタンスは、ここに私のlog4net.configで、別々のファイルに記録するように設定されていますlog4netのロギングは、同じプログラムの
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%utcdate] %-5level %logger: %message%newline%exception"/>
</layout>
</appender>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="Log/svc-%property{ServiceName}"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="'-'yyyy'-'MM'-'dd'.log'"/>
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%utcdate] %-5level %logger: %message%newline%exception"/>
</layout>
</appender>
<root>
<level value="DEBUG"/>
<appender-ref ref="ConsoleAppender"/>
<appender-ref ref="RollingFileAppender"/>
</root>
</log4net>
そして、ここにあるどのようにインスタンスログ:
log = LogManager.GetLogger(ServiceName);
GlobalContext.Properties["ServiceName"] = ServiceName;
XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net.config"));
今、サービスは "Service1" "Service10" "Service2"のようなものと呼ばれています。
私はサービス1が開始と10、私がテストしてるものは、どちらも自分のログファイルを作成します。
svc-BettweenSvc1-2011-07-26.log
svc-BettweenSvc10-2011-07-26.log
しかし、第2のサービスが開始されたとき、最初の1からのログがあることを開始2番目のログに追加され、もう1つは使用されなくなります。
log4netを使用してWindowsサービスで別々のログファイルに正しくログする方法はありますか?
が、私は多くのログに多くのアプリケーションを分けたい:にもかかわらず、私はうまくいけば他の人を助けるためにそれを投稿します – bevacqua