LOG4NET写日志

来源:互联网 发布:c2c 源码 编辑:程序博客网 时间:2024/05/19 13:15

1、导入log4net.dll。
下载链接

2、配置app.config

<?xml version="1.0" encoding="utf-8" ?><configuration>  <configSections>    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>  </configSections>  <log4net>    <root>      <level value="ALL"/>      <appender-ref ref="LogFileAppender"/>    </root>    <appender name="LogFileAppender" type="log4net.Appender.FileAppender">      <param name="File" value="my_log-file.txt"/>      <param name="AppendToFile" value="true"/>      <layout type="log4net.Layout.PatternLayout">        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt;%n - %m%n"/>      </layout>    </appender>  </log4net>  <startup>    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />  </startup></configuration>

3、配置log4net.config

<?xml version="1.0" encoding="utf-8" ?><configuration>  <log4net>    <logger name="logerror">      <level value="ALL" />      <appender-ref ref="ErrorAppender" />    </logger>    <logger name="loginfo">      <level value="ALL" />      <appender-ref ref="InfoAppender" />    </logger>    <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">      <param name="Encoding" value="utf-8" />      <param name="File" value="Log\\LogError\\" />      <param name="AppendToFile" value="true" />      <param name="MaxSizeRollBackups" value="100" />      <param name="MaxFileSize" value="10240" />      <param name="StaticLogFileName" value="false" />      <param name="DatePattern" value="yyyyMMdd&quot;.htm&quot;" />      <param name="RollingStyle" value="Date" />      <layout type="log4net.Layout.PatternLayout">        <param name="ConversionPattern" value="%n异常时间:%d [%t] %n异常级别:%-5p %n异 常 类:%c [%x] %n%m &lt;BR&gt;%n "  />      </layout>    </appender>    <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">      <param name="Encoding" value="utf-8" />      <param name="File" value="Log\\LogInfo\\" />      <param name="AppendToFile" value="true" />      <param name="MaxFileSize" value="10240" />      <param name="MaxSizeRollBackups" value="100" />      <param name="StaticLogFileName" value="false" />      <param name="DatePattern" value="yyyyMMdd&quot;.htm&quot;" />      <param name="RollingStyle" value="Date" />      <layout type="log4net.Layout.PatternLayout">        <param name="ConversionPattern" value="%n日志时间:%d [%t] %n日志级别:%-5p %n日 志 类:%c [%x] %n%m &lt;BR&gt;%n "  />      </layout>    </appender>  </log4net></configuration>

4、封装LogUnitl类

using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace WeChatRemind{    class LogUnit    {        public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo");        public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror");        public static void WriteLog(string info)        {            try            {                loginfo.Info(info);            }            catch (Exception)            {                throw;            }        }        public static void WriteLog(string info, Exception se)        {            logerror.Error(info, se);        }    }}

5、修改AssemblyInfo.cs

using System.Reflection;using System.Runtime.CompilerServices;using System.Runtime.InteropServices;// 有关程序集的常规信息通过以下// 特性集控制。更改这些特性值可修改// 与程序集关联的信息。[assembly: AssemblyTitle("WeChatRemind")][assembly: AssemblyDescription("")][assembly: AssemblyConfiguration("")][assembly: AssemblyCompany("")][assembly: AssemblyProduct("WeChatRemind")][assembly: AssemblyCopyright("Copyright ©  2016")][assembly: AssemblyTrademark("")][assembly: AssemblyCulture("")]// 将 ComVisible 设置为 false 使此程序集中的类型// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,// 则将该类型上的 ComVisible 特性设置为 true。[assembly: ComVisible(false)]// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID[assembly: Guid("1368fd9e-2db2-49cf-94fc-b86de2939de7")]// 程序集的版本信息由下面四个值组成:////      主版本//      次版本 //      生成号//      修订号//// 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,// 方法是按如下所示使用“*”:// [assembly: AssemblyVersion("1.0.*")][assembly: AssemblyVersion("1.0.0.0")][assembly: AssemblyFileVersion("1.0.0.0")]**[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", ConfigFileExtension = "config", Watch = true)]**

6、log4net.config属性设置
这里写图片描述

7、调用
LogUnit.WriteLog(“AAA”);

0 0