C# log4net 的配置

网站项目中的配置

首先,你得确保你的电脑是联网的。确保这一点后,我们就是先给项目中安装log4net。安装的方法有很多种,我粗略介绍一下我经常使用的方法:使用Visual Studio 2013(我这里使用的是2013)打开项目,在“解决方案资源管理器”的项目目录中找到“引用”鼠标右键弹出菜单中点击“管理NuGet程序包(N)...”就会弹出一个管理窗口如下图:

图1

如果这样不行的话可以试试“程序包管理器控制台”用命令安装:先要打开控制台,在“工具”“NuGet程序包管理器”“程序包管理器控制台”这样就可以打开程序包管理器控制台。

那么安装命令不会怎么办?这个好办还是像图1的窗口做如下操作:

图2

 

图3

 

图4

这样就把log4net的程序包安装到项目中,接下来就是怎么在项目中配置了。首先讲解网站项目中是怎么配置的。

第一步:在Web.config文件中做如下配置,先上图看一下究竟:

图5

图6

下是图5、图6中的配置文件中的代码:

 

复制代码
 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />




  <log4net>
    <!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->
    <!-- Set root logger level to ERROR and its appenders -->
    <root>
      <level value="ALL" /><!--指定将此级别及以上的log打印到log文件中-->  
      <appender-ref ref="SysAppender" />
    </root>
    <!-- Print only messages of level DEBUG or above in the packages -->
    <logger name="WebLogger">
      <level value="DEBUG" />
    </logger>
    <appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net">
      <param name="File" value="App_Data/" /> <!--file可以指定具体的路径 eg : d:\\test.log。不指定的话log被生成在项目的bin/Debug 或者 bin/Release目录下 (web的项目 默认生成在根目录下)--> 
      <param name="AppendToFile" value="true" />
      <param name="RollingStyle" value="Date" />
      <param name="DatePattern" value="&quot;Logs_&quot;yyyyMMdd&quot;.txt&quot;" />
      <param name="StaticLogFileName" value="false" />
      <layout type="log4net.Layout.PatternLayout,log4net"> 
 <!--指定log的格式-->
< param name ="ConversionPattern" value ="%d [%t] %-5p %c - %m%n" /> </ layout > </ appender > < appender name ="consoleApp" type ="log4net.Appender.ConsoleAppender,log4net" > < layout type ="log4net.Layout.PatternLayout,log4net" > <!--指定log的格式-->   < param name ="ConversionPattern" value ="%d [%t] %-5p %c - %m%n" /> </ layout > </ appender > </ log4net >
复制代码

 第二步,先贴图下面贴出代码:

图7

图7中的代码:

 //配置log4
            log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo(Server.MapPath("~/Web.config")));

这样网站项目中log4net的配置工作就完成了。

最后一步是怎么在项目代码中应用了,我也简单的说一下,就是简单的使用,复杂的就不说了。还是跟上面一样上图说话:

图8

下面图9是项目中产生的日志:

图9

网站项目中log4net的配置就全部完成了,网上还有很多其他的配置方法,我这里只是讲解自己比较常使用的简单的配置方法。

桌面应用程序、控制台应用程序、Windows服务项目中log4net的配置

第一步:跟上面网站项目配置一样先把log4net程序包安装到项目中,两种方式。这里就不再重复讲解了,有什么不懂看上文就可以了。

第二步:也是一样只是由Web.config变成App.config文件代码还是一样,如图10:

图10

第三步:有点不一样了,我们要在项目中的AssemblyInfo.cs中加一行代码:

 

//log4net从配置文件中读取配置
[assembly: log4net.Config.XmlConfigurator(ConfigFileExtension = "config", Watch = true)]

 

如图11:

图11

 

最后一步就是在项目中使用了,跟网站项目中的使用一样就可以了。