首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在使用XmlConfigurator加载后以编程方式设置log4net LockingModel?

如何在使用XmlConfigurator加载后以编程方式设置log4net LockingModel?
EN

Stack Overflow用户
提问于 2013-10-09 14:02:27
回答 2查看 6.1K关注 0票数 6

我有这个XML log4net配置:

  <log4net>
    <appender name="myAppender" type="log4net.Appender.RollingFileAppender">
      <file value="mylog.txt" />
    </appender>
    <root>
      <level value="DEBUG" />
        <appender-ref ref="myAppender" />
    </root>
  </log4net>

我用下面的C#行加载这个配置,它工作得很好:

log4net.Config.XmlConfigurator.Configure(path);

问题:现在我想将lockingModel设置为MinimalLockProgrammatically,不在XML中。

该怎么做呢?

这等同于在XML配置中添加<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-09 19:27:14

// assumes there are not multiple file appenders defined
var appender = log4net.LogManager.GetRepository()
                                 .GetAppenders()
                                 .OfType<FileAppender>()
                                 .SingleOrDefault();

if (appender != null)
{
     appender.LockingModel = new FileAppender.MinimalLock();
}
票数 9
EN

Stack Overflow用户

发布于 2014-12-04 01:43:10

    <appender name="text" type="log4net.Appender.RollingFileAppender,log4net">
        <param name="File" value="c:\system-name.log"/>
        <param name="AppendToFile" value="true"/>
        <rollingStyle value="Date"/>
        <staticLogFileName value="true"/>
        <datePattern value="'.'yyyy-MM-dd"/>
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date [%thread] %5p %c{1}:%L - %m%n"/>
        </layout>
enter code here
        <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
    </appender>
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19264304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档