C# log4net 的配置

转载:https://www.cnblogs.com/lgx5/p/13406289.html

 

项目的日志组件是必备可少的,任何项目中都需要。这样既方便前期的开发测试也方便项目后期的项目维护。C#项目的一个不错的日志组件是log4net,下面我就把网站项目、桌面应用程序项目log4net的如何配置粗略的介绍一下。

网站项目中的配置

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

C# log4net 的配置

图1

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

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

C# log4net 的配置

图2

 

C# log4net 的配置

图3 

C# log4net 的配置

图4

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

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

C# log4net 的配置

图5

C# log4net 的配置

图6

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

C# log4net 的配置
 1   <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
 2   <log4net>
 3     <!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->
 4     <!-- Set root logger level to ERROR and its appenders -->
 5     <root>
 6       <level value="ALL" />
 7       <appender-ref ref="SysAppender" />
 8     </root>
 9     <!-- Print only messages of level DEBUG or above in the packages -->
10     <logger name="WebLogger">
11       <level value="DEBUG" />
12     </logger>
13     <appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net">
14       <param name="File" value="App_Data/" />
15       <param name="AppendToFile" value="true" />
16       <param name="RollingStyle" value="Date" />
17       <param name="DatePattern" value=""Logs_"yyyyMMdd".txt"" />
18       <param name="StaticLogFileName" value="false" />
19       <layout type="log4net.Layout.PatternLayout,log4net">
20         <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
21       </layout>
22     </appender>
23     <appender name="consoleApp" type="log4net.Appender.ConsoleAppender,log4net">
24       <layout type="log4net.Layout.PatternLayout,log4net">
25         <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
26       </layout>
27     </appender>
28   </log4net>
C# log4net 的配置

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

C# log4net 的配置

图7

图7中的代码: 

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

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

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

C# log4net 的配置

图8

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

C# log4net 的配置

图9

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

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

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

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

C# log4net 的配置

图10

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

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

 如图11:

C# log4net 的配置

图11 

上一篇:log4net 写入数据库时需注意logger的additivity属性


下一篇:解决Log4net多进程访问日志文件