博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在项目中使用log4net记录日志
阅读量:4933 次
发布时间:2019-06-11

本文共 2744 字,大约阅读时间需要 9 分钟。

一、准备工作

  1. log4net源码一份,或者生成的log4net.dll文件一份
  2. 数据库中新建一张表,就叫LogCenter吧。
  3. 配置文件一份。
  4. 记录日志的方法一份。

二、开工-- log4net.dll

log4net官方网站:

编译好的 log4net.dll 文件,!

将log4net.dll添加引用到项目中。

三、建表

--数据库创建表

CREATETABLE[dbo].[LogCenter](

[Id][int] primary key IDENTITY (1, 1)NOT NULL,

[Date][datetime]NOTNULL,

[Thread][varchar](255)NOT NULL,

[Level][varchar](50)NOT NULL,

[Logger][varchar](255)NOT NULL,

[Message][varchar](4000)NOT NULL,

[Exception][varchar](2000)NULL

)

四、添加配置文件

五、记录日志的实现代码

Implementation:

using System;

namespace Log4netTet
{
    /// <summary>
    ///
日志操作类
   
/// </summary>
   
public class LogWrite
   
{
        private LogWrite()
        {
            // 构造函数设置配置文件
           
SetConfig();
        }
        // 创建一个log4net对象
        //
       
private static readonly log4net.ILog logInfo = log4net.LogManager.GetLogger("loginfo");
        private static bool IsLoadConfig = false;
        // 设置配置文件
        //
       
private static void SetConfig()
        {
            log4net.Config.XmlConfigurator.Configure();
        }
        /// <summary>
        ///
记录异常信息
       
/// </summary>
        /// <param name="info">
错误提示信息</param>
       
public static void WriteLog(string info)
        {
            if (!IsLoadConfig)
            {
                SetConfig();
                IsLoadConfig = true;
            }
            if (logInfo.IsInfoEnabled)
            {
                logInfo.Info(info);
            }
        }
        public static void WriteLog(string info, Exception ex)
        {
            if (!IsLoadConfig)
            {
                SetConfig();
                IsLoadConfig = true;
            }
            if (logInfo.IsErrorEnabled)
            {
                logInfo.Error(info, ex);
            }
        }
    }
}

六、测试代码

因为实现代码LogWrite类中是静态方法,所以调用的时候不用实例化,简单调用即可。

 

protected void btnLog4net_Click(object sender, EventArgs e)        {             //普通日志消息
Log4netTest.LogWrite.WriteLog(“测试消息");
//异常信息
Log4netTest.LogWrite.WriteLog(“报异常了", new Exception(“这是异常信息啊"));
              
}
 

七、最终效果

 

 

转载于:https://www.cnblogs.com/fanyong/archive/2012/03/22/2411341.html

你可能感兴趣的文章
OllyDBG 入门系列教学--让你瞬间成为破解高手
查看>>
Dubbo点滴(2)之集群容错
查看>>
检测不到兼容的键盘驱动程序
查看>>
listbox用法
查看>>
冲刺第九天 1.10 THU
查看>>
传值方式:ajax技术和普通传值方式
查看>>
Linux-网络连接-(VMware与CentOS)
查看>>
寻找链表相交节点
查看>>
linq 学习笔记之 Linq基本子句
查看>>
[Js]布局转换
查看>>
Java annotation 自定义注释@interface的用法
查看>>
Apache Spark 章节1
查看>>
Linux crontab定时执行任务
查看>>
mysql root密码重置
查看>>
33蛇形填数
查看>>
选择排序
查看>>
SQL Server 数据库的数据和日志空间信息
查看>>
前端基础之JavaScript
查看>>
自己动手做个智能小车(6)
查看>>
自己遇到的,曾未知道的知识点
查看>>