2016-07-12 8 views
0

次のコードでは、ローリングファイルアペンダーをlog4netに追加しています。プログラムでlog4netアペンダーを追加しましたが、レイアウトが機能しません

 ILog myLogger = LogManager.GetLogger("Audit"); 

     var auditAppender = new RollingFileAppender() 
     { 
      Name = "AuditAppender", 
      File = this.fullyQualifiedFileName, 
      DatePattern = "yyyyMMdd", 
      RollingStyle = RollingFileAppender.RollingMode.Date, 
      AppendToFile = true, 
      Layout = new PatternLayout() 
      { 
       ConversionPattern = "%newline %date %-5level %newline%message%newline", 
      }, 
     }; 

     auditAppender.ActivateOptions(); 

     log4net.Repository.Hierarchy.Logger l = (log4net.Repository.Hierarchy.Logger)myLogger.Logger; 
     l.AddAppender(auditAppender); 
     l.Repository.Configured = true; 

     myLogger.Info(message); 

しかし、結果は、すべての私のConversionPatternに従っていないようです。どんな手掛かり?

答えて

2

あなたは非常に、あなたが逃した非常に近い;-)

唯一のことは、あなたにもPatternLayout.ActivateOptionsを呼び出す必要がありました。

var auditAppender = new RollingFileAppender() 
{ 
    // snip 
} 

((PatternLayout)auditAppender.Layout).ActivateOptions(); 
auditAppender.ActivateOptions(); 
+1

非常に良い情報を!それは今働く。 – hardywang

関連する問題