2016-05-20 33 views
0

I持って、私は以下のようにコード内で使用されるファイル(log4net.Appender.RollingFileAppender)log4netの - ワンロガー、複数のアペンダ

public static readonly ILog GeneralLogger = LogManager.GetLogger("GeneralLogger"); 

ログインするために、現在必要なすべての情報ログに記録し、既存のアプリケーション、:

GeneralLogger.Info("A log entry"); 

今、私はSignalR(log4net.SignalR.SignalrAppender)に、同時に、それらの同じログエントリを送信するために別のアペンダを追加するために、自分のアプリケーションのコードを変更することなく、欲しい

I

<log4net> 
    <appender name="GeneralLogAppender" type="log4net.Appender.RollingFileAppender"> 
     <file value="logs\general_" /> 
     <appendToFile value="true" /> 
     <staticLogFileName value="false" /> 
     <rollingStyle value="Date" /> 
     <datePattern value="yyyyMMdd'.log'" /> 
     <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date [%thread] %-5level - %message%newline" /> 
     </layout> 
    </appender> 

    <appender name="GeneralLogSignalRAppender" type="log4net.SignalR.SignalrAppender, log4net.SignalR"> 
     <layout type="log4net.Layout.PatternLayout"> 
      <conversionPattern value="%date %-5level - %message%newline" /> 
     </layout> 
    </appender> 

    <logger name="GeneralLogger"> 
     <level value="ALL" /> 
     <appender-ref ref="GeneralLogAppender" /> 
     <appender-ref ref="GeneralLogSignalRAppender" /> 
    </logger> 
</log4net> 

しかし、私はSignalRにどのようなデータロギングも取得していませんか?誰かが私のコンフィギュレーションの少なくともこの部分は、(複数のログアペンダを追加することに関して)正しいかどうかを教えて

おかげで解決さ

+1

はい、うまくいくように見えますが、どちらのアペンダーもロガーで正しく名前が付けられています。それでも動作しない場合は、[内部デバッグを有効にする](http://haacked.com/archive/2006/09/27/Log4Net_Troubleshooting.aspx/)を参照してログを確認してください。 – stuartd

答えて

0

ができ

上記の設定は確かに正しいです。それが失敗ログの理由は、私は2つの同じである、クリスFulstowおよび/またはマシュー尖塔で(log4net.SignalRアペンダを使用していたアペンダだったことが判明し、将来の使用のために注意することが:)

をグッドナゲットでさえも!) - 正しく動作するには多くの調整が必要でしたが、ドキュメントはほとんどありませんでした。

誰かがこれに助けを必要とする場合は、私は喜んで支援するでしょう。

関連する問題