• log4net快速上手


    原文地址:https://www.cnblogs.com/lsgsanxiao/p/5845300.html

    略有删改


    1.配置文件,可以单独创建log4net.config文件,然后手动指定目录,也可以在项目的app.config或web.config的configuration节点下插入以下代码

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
    </configSections>
    <log4net>
    <logger name="logerror">
    <level value="ERROR" />
    <appender-ref ref="ErrorAppender" />
    </logger>
    <logger name="loginfo">
    <level value="INFO" />
    <appender-ref ref="InfoAppender" />
    </logger>
    <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
    <!--设置日志存储路径-->
    <param name="File" value="Data//WebLog//LogError//" />
    <!--是否追加到文件-->
    <param name="AppendToFile" value="true" />
    <!--最多产生的日志文件数,超过则只保留最新的n个。设定值value="-1"为不限文件数-->
    <param name="MaxSizeRollBackups" value="100" />
    <param name="MaxFileSize" value="1024" />
    <!--是否只写到一个文件中-->
    <param name="StaticLogFileName" value="false" />
    <!--这是按日期产生文件夹,并在文件名前也加上日期-->
    <param name="DatePattern" value="yyyyMM/dd&quot;.log&quot;" />
    <!--按照何种方式产生多个日志文件(日期[Date],文件大小[Size],混合[Composite])-->
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%n异常时间:%d [%t] %n异常级别:%-5p %n异常位置:[%thread] (%file:%line) %n消息描述:%message%n异常:%exception%n%n " />
    </layout>
    </appender>
    <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
    <!--设置日志存储路径-->
    <param name="File" value="Data//WebLog//LogInfo//" />
    <!--是否追加到文件-->
    <param name="AppendToFile" value="true" />
    <!--最多产生的日志文件数,超过则只保留最新的n个。设定值value="-1"为不限文件数-->
    <param name="MaxSizeRollBackups" value="100" />
    <param name="MaxFileSize" value="1024" />
    <!--是否只写到一个文件中-->
    <param name="StaticLogFileName" value="false" />
    <!--这是按日期产生文件夹,并在文件名前也加上日期-->
    <param name="DatePattern" value="yyyyMM/dd&quot;.log&quot;" />
    <!--按照何种方式产生多个日志文件(日期[Date],文件大小[Size],混合[Composite])-->
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%n日志时间:%d [%t] %n日志级别:%-5p %n消息描述:%c [%x] %n%m %n " />
    </layout>
    </appender>
    </log4net>
    </configuration>

    2.读取配置
    在项目启动文件里加入读取配置的代码,可以说Program.cs或者Global.cs等
    如果是直接卸载项目配置文件下,用这种方式读取

    log4net.Config.XmlConfigurator.Configure();

    如果是单独写的log4net.config文件,则需要把文件路径传给Configure()方法

    var fi = new System.IO.FileInfo(path);
    log4net.Config.XmlConfigurator.Configure(fi);

    3.帮助类

    /// <summary> 
    /// LogHelper的摘要说明。 
    /// </summary> 
    public class LogHelper {
    /// <summary>
    /// 静态只读实体对象info信息
    /// </summary>
    public static readonly log4net.ILog Loginfo = log4net.LogManager.GetLogger("loginfo");
    /// <summary>
    /// 静态只读实体对象error信息
    /// </summary>
    public static readonly log4net.ILog Logerror = log4net.LogManager.GetLogger("logerror");
    
    /// <summary>
    /// 添加info信息
    /// </summary>
    /// <param name="info">自定义日志内容说明</param>
    public static void WriteLog(string info) {
    try {
    if (Loginfo.IsInfoEnabled) {
    Loginfo.Info(info);
    }
    } catch { }
    }
    
    
    /// <summary>
    /// 添加异常信息
    /// </summary>
    /// <param name="info">自定义日志内容说明</param>
    /// <param name="ex">异常信息</param>
    public static void WriteLog(string info, Exception ex) {
    try {
    if (Logerror.IsErrorEnabled) {
    Logerror.Error(info, ex);
    }
    } catch { }
    }
    }
  • 相关阅读:
    Altium Designer的PCB定位槽制作
    J-LINK V8固件烧录指导
    简单实用的双向电平转换电路(3.3v-5v)
    Altium Designer 文档信息设置以及模板制作
    第十周作业
    第九周作业
    第8周作业作业
    第七周作业
    linux作业
    马哥教育第一阶段考试(月考)
  • 原文地址:https://www.cnblogs.com/fb208/p/11327909.html
Copyright © 2020-2023  润新知