簡體   English   中英

如何從Custom appender(Log4net)獲取Layout屬性?

[英]How to get Layout property from Custom appender(Log4net)?

我已經使用Log4net實現了一個CustomAppender。如何從Appender中的patternLayout訪問Layout屬性。

  public class CutomAppender : AppenderSkeleton
{
     protected override void Append(LoggingEvent loggingEvent)
    {
      //My custom code here...........
    }
}

配置文件:

<log4net>
 <appender name="CutomAppender" type="log4netCustomAppender.CutomAppender,log4netCustomAppender">   
  <layout type="log4net.Layout.PatternLayout">
   <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
  </layout>
 </appender>
 <root>                                                                               
<level value="ALL" />
<appender-ref ref="CutomAppender" />
 </root>
</log4net>

要獲取布局信息,只需使用基本AppenderSkeleton類的Layout屬性。 要獲取已在此布局中呈現的消息,請使用此相同基類中的RenderLoggingEvent方法:

public class CutomAppender : AppenderSkeleton
{
    protected override void Append(LoggingEvent loggingEvent)
    {
        string renderedMessage = base.RenderLoggingEvent(loggingEvent);
        ILayout layout = base.Layout;
        // do something here
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM