首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >外部文件中的Log4Net配置不起作用

外部文件中的Log4Net配置不起作用
EN

Stack Overflow用户
提问于 2009-01-15 08:00:59
回答 11查看 80.1K关注 0票数 94

我们正在使用log4net,并希望在外部配置文件中指定它的配置(就像我们对其他部分所做的那样)。为此,我们将App.config中的log4net部分更改为:

代码语言:javascript
运行
复制
...
<section name="log4net" 
     type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
...
<log4net configSource="Log.config" />
...

在Log.Config文件(与App.config相同的目录)中,我们有:

代码语言:javascript
运行
复制
<log4net>
  <appender name="General" type="log4net.Appender.FileAppender">
    <file value="myapp.log" />
    <layout type="log4net.Layout.SimpleLayout" />
  </appender>
  <root>
    <appender-ref ref="General" />
  </root>
</log4net>

但是,当我们运行应用程序时,不会创建日志文件(也不会进行日志记录)。没有错误消息输出到控制台。

如果我们将Log.config文件的内容移回App.config (替换上面的第一行代码),它将按预期工作。你知道为什么它不能在外部文件中工作吗?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2009-01-15 08:11:00

您的AssemblyInfo.cs文件中是否具有以下属性:

代码语言:javascript
运行
复制
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]

并在需要日志记录功能的每个类的开头编写如下代码:

代码语言:javascript
运行
复制
private static readonly ILog log = 
LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

我有一个博客帖子,其中包含这个和其他信息here

票数 120
EN

Stack Overflow用户

发布于 2009-09-25 20:10:16

在这个问题上有一个open defect。Log4Net不支持配置元素的configSource属性。要使用纯配置文件解决方案,您可以在appSettings中使用log4net.Config键。

第1步:包含普通配置节定义:

代码语言:javascript
运行
复制
<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>

步骤2:在appSettings中使用神奇的log4net.Config密钥。

代码语言:javascript
运行
复制
<appSettings>
      <add key="log4net.Config" value="log4net.simple.config" />
</appSettings>

步骤3:贡献一个补丁来修复configSource的处理。

票数 42
EN

Stack Overflow用户

发布于 2011-04-12 05:09:41

遗漏的一步是

代码语言:javascript
运行
复制
log4net.Config.XmlConfigurator.Configure(); 

这将导致使用configSource。确保在调用GetLogger()之前调用它一次;

票数 27
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/445976

复制
相关文章

相似问题

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