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 的日志记录 级别 ,比如设置成全部记录看看
有的时候还需要注意一下,你要写入的目录是不是有权限。这个很容易忽视。
是目录没有写入权限导致。