winform程序利用Log4net记录日志

来源:互联网 发布:域名交易新闻 编辑:程序博客网 时间:2024/05/01 17:56

Log4net下载链接 点我下载
新建winform窗体程序。然后添加对应.NET FramerWork版本的log4net.dll引用。
添加引用后在这里写图片描述
AssemeblyInfo中添加如下语句:

[assembly: log4net.Config.XmlConfigurator(Watch = true)]

app.Config进行如下设置

<?xml version="1.0" encoding="utf-8"?><configuration>  <configSections>    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />  </configSections>    <startup>         <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />    </startup>   <log4net>    <logger name="Log">      <level value="INFO" />      <appender-ref ref="RollingLog" />    </logger>    <logger name="Err">      <level value="ERROR" />      <appender-ref ref="RollingErr" />    </logger>    <appender name="RollingLog" type="log4net.Appender.RollingFileAppender">      <file value="WindowsServiceLog\" />      <appendToFile value="true" />      <rollingStyle value="Date" />      <datePattern value="yyyyMMdd'.txt'" />      <staticLogFileName value="false" />      <layout type="log4net.Layout.PatternLayout">        <conversionPattern value="记录时间:%d 线程ID:[%thread]- 操作信息:%m%n" />      </layout>      <filter type="log4net.Filter.LevelRangeFilter">        <param name="LevelMin" value="INFO" />        <param name="LevelMax" value="INFO" />      </filter>    </appender>    <appender name="RollingErr" type="log4net.Appender.RollingFileAppender">      <file value="Err\" />      <appendToFile value="true" />      <rollingStyle value="Date" />      <datePattern value="yyyyMMdd'.txt'" />      <staticLogFileName value="false" />      <layout type="log4net.Layout.PatternLayout">        <conversionPattern value="记录时间:%d 线程ID:[%thread]- 错误描述:%m%n" />      </layout>      <filter type="log4net.Filter.LevelRangeFilter">        <param name="LevelMin" value="ERROR" />        <param name="LevelMax" value="ERROR" />      </filter>    </appender>  </log4net></configuration>

定义LogHelp类

public  class LogHelp    {        private static readonly ILog logInfo =  LogManager.GetLogger("Log");        private static readonly ILog logErr = LogManager.GetLogger("Err");        /// <summary>        /// 记录正常的消息        /// </summary>        /// <param name="msg">消息内容</param>        public static void info(string msg)        {            logInfo.Info(msg);        }        /// <summary>        /// 记录异常信息        /// </summary>        /// <param name="msg">异常信息内容</param>        public static void error(string msg)        {            StackTrace stackTrace = new StackTrace();            StackFrame stackFrame = stackTrace.GetFrame(1);            MethodBase methodBase = stackFrame.GetMethod();            logErr.Error("类名:" + methodBase.ReflectedType.Name + " 方法名:" + methodBase.Name + " 信息:" + msg);        }    }

log4net具体参数参考

0 0
原创粉丝点击