簡體   English   中英

以編程方式添加log4net附加程序,但布局不起作用

[英]Add log4net appender programmatically, but layout does not work

我有以下代碼將滾動文件附加程序添加到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 有什么線索嗎?

你非常非常接近;-)

您唯一想念的就是還需要調用PatternLayout.ActivateOptions

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

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

暫無
暫無

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

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