现在的位置: 首页 > 综合 > 正文

使用log4net记录server Log

2013年02月18日 ⁄ 综合 ⁄ 共 1708字 ⁄ 字号 评论关闭

    前段时间项目需要运行时记录各种操作log及Error,自己实现也可,但是基于时间考虑,使用了开源的log4net。log4net是log4j的姊妹,都是非常强大的log记录程序集。

使用方法如下:

1.添加log4net的dll引用

2.在web.config中<configuration>节点中添加以下内容

<configuration>
<configSections>
<!--在配置选项中加入log4net的引用-->
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>

<log4net>
<appender name="LogFile" type="log4net.Appender.RollingFileAppender,log4net" >
<!--<param name="File" value="C:\Srvlog.txt" /> 定义用文件来保存日志,生成的文件log.txt和应用程序生成的exe文件在同一目录下。-->
<param name="File" value="Serverlog\Srvlog-" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<!--定义输出风格-->
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
<param name="Header" value="&#13;&#10;----------------------Serverlog--------------------------&#13;&#10;" />
<param name="Footer" value="&#13;&#10;------------------------------------------------------------&#13;&#10;" />
</layout>
</appender>
<appender>
<!--一个配置文件可以有很多appender,一个appender节就相当于一个日志输出介质或方法。 -->
</appender>
<logger name="logApp">
<!--定义logger对象的名字为logApp,以方便在代码中使用,<logger>
配置项可以不配置-->
<level value="ALL" /><!--定义输出的信息等级为所有其中包括Fatal.Error.Warn.Info.Debug-->
</logger>
<root>
<!--定义日志输出的方式和等级-->
<level value="INFO" />
<appender-ref ref="LogFile" /><!--选择了文件输出,注意粗体部分对应的名称appender-->
</root>
</log4net>
</configuration>

3.读取相关配置

private static ILog log = null;

log4net.Config.XmlConfigurator.Configure(new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "Web.config"));
log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //此处使用反射

4.调用相关函数记录log

log.Info(content);

抱歉!评论已关闭.