关于 log4net 日志功能使用方法

本文详细介绍了如何在.NET项目中使用log4net进行日志管理,包括添加DLL引用、配置log4net.config文件、设置AssemblyInfo.cs、创建Helper类以及配置RollingFileAppender。
摘要由CSDN通过智能技术生成

关于 log4net 日志功能使用方法
所需文件( log4net.config    log4net.dll    log4net.xml   LogHelper.cs)

(1)  添加dll到自己的项目   在项目树》   右键引用添加   》浏览找到本地准备好的DLL文件 log4net.dll   
(2)增加配置文件   在项目名称》右键》新建项》找到》应用程序配置文件》将名称修改为 log4Net.config  >确认添加按钮即可
(3)设置配置文件的属性,特别重要。右击log4net.config  >属性   》复制到输出目录》选择始终复制或者较新复制,这样才正常
(4)设置Assemblyinfo.cs  里面增加一行代码 意思是将文件引用进程序 
[assembly: log4net.Config.XmlConfigurator(ConfigFile ="log4net.config",ConfigFileExtension ="config",Watch =true)]
(5)增加Helper类   特别注意:   如果不在一个项目内可以修改空间名称   比如放在DAL项目内,   那么第4步就需要在DAL下面添加。config配置文件也要放在DAL下面

(6)在BLL里面需要增加静态业务类 LogHelperManager.cs   因为各个窗口引用了BLL。所以其他窗口可以直接使用日志功能    

LogHelper.Info("普通日志测试");

LogHelper.Error("系统错误日志测试",ex);
代码如下
//***********************************************业务类方法代码*************************************************
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DAL;

namespace BLL
{
    public static class LogHelperManager
    {
        public static void Info(string message)
        {
            LogHelper.Info(message);
        }
        public static void Error(string message, Exception ex)
        {
            LogHelper.Error(message, ex);
        }
    }
}
//***************************************LogHelper类代码******************************************************8
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DAL
{
    public class LogHelper
    {
        /// <summary>
        /// 普通日志   方法是静态方法  名称首字母必须大写
        /// </summary>
        /// <param name="message">日志消息</param>
        public static  void Info(string message)
        {
            //先实例化info 
              log4net.ILog log = log4net.LogManager.GetLogger("InfoLog");
            if (log.IsInfoEnabled)//判断状态
            {
            log.Info(message);
            }
            log = null;
        }
        public static void Error(string message, Exception ex)
        {
            log4net.ILog log = log4net.LogManager.GetLogger("Error");//判断日志文件夹是否存在
            if (log.IsErrorEnabled) 
            {
            log.Error(message, ex);
            }
            log = null;
        
        
        }

    }
}


//***************************config配置文件*************************************
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
    </configSections>
    <log4net>
        <root>
        </root>
        <logger name="Error">//等级
            <level value="ALL" />
            <appender-ref ref="ErrorAppender" />
        </logger>
        <logger name="InfoLog">
            <level value="ALL" />
            <appender-ref ref="InfoAppender" />
        </logger>
//修改以下可以修改信息的格式   需要查阅log4net  官方文档
        <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender,log4net" >
            <param name="File" type="" value="Log/Error/" />
            <param name="AppendToFile" value="true" />
            <param name="RollingStyle" value="Date" />
            <param name="DatePattern" value="yyyyMMdd&quot;.ini&quot;" />
            <param name="StaticLogFileName" value="false" />
            <layout type="log4net.Layout.PatternLayout,log4net">
                <param name="ConversionPattern" value="%n[%d] %c %n%m%n%n" />
            </layout>
        </appender>
        <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender,log4net" >
            <param name="File" type="" value="Log/Info/" />
            <param name="AppendToFile" value="true" />
            <param name="RollingStyle" value="Date" />
            <param name="DatePattern" value="yyyyMMdd&quot;.ini&quot;" />
            <param name="StaticLogFileName" value="false" />
            <layout type="log4net.Layout.PatternLayout,log4net">
                <param name="ConversionPattern" value="%n[%d] %c %n%m%n%n" />
            </layout>
        </appender>
    </log4net>
</configuration>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大鱼儿小鱼儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值