【发布时间】:2018-05-19 13:54:32
【问题描述】:
我将 Castle 与 Log4Net 一起使用。所有文件夹均已创建,但日志信息未写入文本文件。
这里是配置:
<add key="log4net.Internal.Debug" value="true"/>
<add key="log4net.Internal.Error" value="true"/>
<add key="log4net.Internal.Info" value="true"/>
<add key="log4net.Internal.Fatal" value="true"/>
<add key="log4net.Internal.Warn" value="true"/>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender,log4net">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="..\\..\\LOGS\\DEBUG\\" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<staticLogFileName value="false" />
<DatePattern value="yyyy\\\\MM\\\\dd\\\\yyyyMMdd'_debug.txt'" />
<maxSizeRollBackups value="-1" />
<maximumFileSize value="50MB" />
<countDirection value="1" />
<preserveLogFileNameExtension value="true" />
<encoding value="utf-8" />
<!--<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />-->
<layout type="log4net.Layout.PatternLayout,log4net">
<conversionPattern value="%date [%thread] %level %logger - %message%newline" />
</layout>
</appender>`
<logger name="Log">
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
<appender-ref ref="warningAppender" />
<appender-ref ref="fatalAppender" />
</logger>`
我为此使用控制台应用程序,Main 方法将像这样开始:
XmlConfigurator.Configure(new FileInfo("log4net.config"));
并且每个人都有权写入、读取 LOGS 文件夹中的所有文件。
【问题讨论】:
-
尝试使用完整路径名并检查。 -
你在哪里添加了 XmlConfigurator.Configure(new FileInfo("log4net.config"));这条线?在 Application_Start 下?
-
Varun ,此代码块在 Program.cs 的第一个代码中。对吗?
-
可以将其添加到任何地方以便读取您的配置。如果您在 global.asax 下的应用程序启动处添加会更好
-
codeproject.com/Articles/140911/log-net-Tutorial 我发现了这个不错的 tute。我觉得对你有帮助
标签: c# log4net log4net-configuration rollingfileappender fileappender