zoukankan      html  css  js  c++  java
  • log4net 配置

    1.在项目中引入log4net.dll组件;

    2.在App.congfig中做如下修改(可省略)

    在加入如下内容:

    这个节点最好放在<configuration>下的第一个位置,不然在服务里会报错。

    <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
    </configSections>
     <log4net>
        <!--定义输出到文件中-->
        <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
          <!--定义文件存放位置-->
          <file value="log\"/>
          <appendToFile value="true"/>
          <rollingStyle value="Date"/>
          <datePattern value="yyyy\yyyyMM\yyyyMMdd'.txt'"/>
          <staticLogFileName value="false"/>
          <param name="MaxSizeRollBackups" value="100"/>
          <layout type="log4net.Layout.PatternLayout">
            <!--每条日志末尾的文字说明-->
            <!--输出格式-->
            <!--样例:2015-06-08 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
            <conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n操作类:%logger property: [%property{NDC}] - %n日志描述:%message%newline %n"/>
          </layout>
        </appender>
        <root>
          <level value="INFO"/>
          <!--文件形式记录日志-->
          <appender-ref ref="RollingLogFileAppender"/>
        </root>
      </log4net>
    config

    3.新建LogHelp.cs文件

    using System;
    using System.Collections.Generic;
    using System.Text;
    using log4net;
    using System.Diagnostics;
    using System.Reflection;
     
    namespace WinService
    {
     public class LogHelper
        {
            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);
            }
        }
    
    }
    loghelper

    4.在项目的PropertiesAssemblyInfo.cs文件中加入如下内容:

    这段代码也可以放到LogHelp.cs类中申明

    注意: ConfigFile 可以指定相对路径 和 绝对路径。 eg: /log/xxxx.log  或者 d://log//xxxx.log

    [assembly: log4net.Config.XmlConfigurator(ConfigFile="Log4Net.config", Watch=true)]  

    注意:根据第4步的配置,应该把log4net的配置文件放到项目的bin/Debug 或者 bin/Release目录下,否则会出现找不到配置文件而无法创建logger对象。

    (web的项目,直接放在web项目的根目录下即可)

    如果loghelp里指定了Log4Net.config,就不用在web.config再次配置(可省略第二步),其实参考

    https://blog.csdn.net/coolcoffee168/article/details/7692589

  • 相关阅读:
    Json2JsonArray JsonArray2StringArray
    循环结构
    类型转换代码
    字符串的截取拼接
    循环语句,选择结构的相关代码
    Java代码2-运算符简单运用
    Java代码1
    集合框架
    接口
    继承多态
  • 原文地址:https://www.cnblogs.com/xbding/p/4563343.html
Copyright © 2011-2022 走看看