日期:2014-05-17  浏览次数:20537 次

log4net记录日志时输出类名和方法名?
在使用log4net的过程中,我定义了多个不同的logger
  <logger name="log">
  <level value="INFO"/>
  <appender-ref ref="FileAppender"/>
  </logger>
  <logger name="errorLog">
  <level value="ALL"/>
  <appender-ref ref="ErrorFileAppender"/>
  </logger>

获取:
ILog log=log4net.LogManager.GetLogger("log");

ILog errorLog=log4net.LogManager.GetLogger("errorLog");

我想在写日志的时候
[2012-07-15 14:09:28,015]-----------------------------
记录时间:2012-07-15 14:09:28,187 线程ID:10 日志级别:INFO 出错类:log [(null)] 
haha
出错类这里输出的是类名和方法名,这个该怎么实现?
并且GetLogger的参数有一个必须是"log"或者"errorLog"



------解决方案--------------------
%class.%method 

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="LogFile/" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
<param name="StaticLogFileName" value="false" />
<!--最小锁定模型以允许多个进程可以写入同一个文件-->
<param name="LockingModel" value="log4net.Appender.FileAppender.MinimalLock"></param>
<layout type="log4net.Layout.PatternLayout">
<param name="Header" type="log4net.Util.PatternString" value="ERP与WMS接口日志开始-----------------------------%newline" />
<param name="Footer" type="log4net.Util.PatternString" value="ERP与WMS接口日志结束-----------------------------%newline" />
<param name="ConversionPattern" value="记录时间:%date 线程ID:%thread 日志级别:%-5level 信息类:%class.%method %newline%message%newline" />
</layout>
</appender>
你这样试试