VS 2010打开网站使用非调式模式运行网站项目,log4net无法记录到日志信息,但使用调试模式运行网站,log4net就可以记录到日志信息,请问这是什么原因?有什么解决办法?
Thanks.
将配置文件中 <log4net debug="true"> 改为 <log4net debug="false"> 试试
log4net的配置信息开始已设置为:
<?xml version="1.0" encoding="utf-8" ?>
<log4net debug="false">
 <!-- Define some output appenders -->
 <appender name="trace" type="log4net.Appender.TraceAppender, log4net">
 <layout type="log4net.Layout.PatternLayout,log4net">
 <param name="ConversionPattern" value="%d{ABSOLUTE} %c{1}(%L) %M [%-5p] - %m%n"/>
 </layout>
 </appender>
 <appender name="console" type="log4net.Appender.ConsoleAppender, log4net">
 <layout type="log4net.Layout.PatternLayout,log4net">
 <param name="ConversionPattern" value="%d{ABSOLUTE} %c{1}(%L) %M [%-5p] - %m%n"/>
 </layout>
 </appender>
 <appender name="rolling" type="log4net.Appender.RollingFileAppender, log4net">
 <file value="logs/logfile.txt"/>
 <appendToFile value="true"/>
 <rollingStyle value="Composite"/>
 <datePattern value="yyyy-MM-dd"/>
 <maxSizeRollBackups value="-1" />
 <maximumFileSize value="100MB" />
 <layout type="log4net.Layout.PatternLayout,log4net">
 <param name="ConversionPattern" value="%d{ABSOLUTE} %c{1}(%L) %M [%-5p] - %m%n"/>
 </layout>
 </appender>
 <!-- Setup the root category, add the appenders and set the default priority -->
 <root>
 <priority value="INFO"/>
 <appender-ref ref="console"/>
 <appender-ref ref="trace"/>
 <appender-ref ref="rolling"/>
 </root>
</log4net>
@LZD: 用IIS试试
@dudu: 通过VS工具的Release模式发布到IIS服务器运行程序,也是不能记录Log日志信息。而使用Debug模式发布就可以记录。
可能是Config的问题,用下面代码测试一下,看是否有log:
log4net.Config.XmlConfigurator.Configure(new FileInfo("xxx.log4net"));
ILog log = log4net.LogManager.GetLogger("test");
log.Info("test");
修改一下log4net 的日志记录 级别 ,比如设置成全部记录看看
有的时候还需要注意一下,你要写入的目录是不是有权限。这个很容易忽视。
是目录没有写入权限导致。