我正在尝试使用log4net。当我启动应用程序时,它会创建日志文件,但无论我调用Log.Info("Application Started");
多少次,它都会为空。我研究了google返回的前两页,我的代码似乎与所有示例匹配。
代码:
[assembly: XmlConfigurator(Watch = true)]
namespace Generator
{
public class Run
{
private static readonly log4net.ILog Log =
log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
public List<BILL_RUN> PerformBillRun()
{
XmlConfigurator.Configure();
Log.Info("Application Started");
var enabled = Log.IsInfoEnabled; //This is true
}
}
}
的app.config
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="log-files.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<root>
<level value="All" />
<appender-ref ref="FileAppender" />
</root>
</log4net>
关于可能出错的任何指示?
答案 0 :(得分:6)
这一切都发生在我身上......一旦我发布问题。
事实证明我的<configSections></configSections>
标签不直接是<configuration>
的孩子,这意味着配置不会被拾取(我假设),并且因为log4net吞下所有异常,这只会表现出来进一步进入我的应用程序。
日志记录工作正常。