博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
log4net使用简介
阅读量:7293 次
发布时间:2019-06-30

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

说明:本程序演示如何利用log4net记录程序日志信息。log4net是一个功能著名的开源日志记录组件。利用log4net可以方便地将日志信息记录到文件、控制台、Windows事件日志和数据库(包括MS SQL Server, Access, Oracle9i,Oracle8i,DB2,SQLite)中。并且我们还可以记载控制要记载的日志级别,可以记载的日志类别包括:FATAL(致命错误)、ERROR(一般错误)、WARN(警告)、INFO(一般信息)、DEBUG(调试信息)。要想获取最新版本的log4net组件库,可以到官方网站下载。现在的最新版本是1.2.10。

下面的例子展示了如何利用log4net记录日志 。

首先从官方网站下载最近版本的log4net组件,现在的最新版本是1.2.10。在程序中我们只需要log4net.dll文件就行了,添加对log4net.dll的引用,就可以在程序中使用了。

接着我们配置相关的配置文件(WinForm对应的是*.exe.config,WebForm对应的是*.config),本实例中是控制台应用程序,配置如下(附各配置的说明):

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
  </configSections>
  <appSettings>
  </appSettings>
  <log4net>
    <!--定义输出到文件中-->
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
      <!--定义文件存放位置-->
      <file value="D:/log4netfile.txt" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <datePattern value="yyyyMMdd-HH:mm:ss" />
      <layout type="log4net.Layout.PatternLayout">
        <!--每条日志末尾的文字说明-->
        <footer value="by 周公" />
        <!--输出格式-->
        <!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
        <conversionPattern value="记录时间:%date 线程ID:[%thread] 日志级别:%-5level 出错类:%logger property:[%property{NDC}] - 错误描述:%message%newline" />
      </layout>
    </appender>
    <!--定义输出到控制台命令行中-->
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
    <!--定义输出到windows事件中-->
    <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
    <!--定义输出到数据库中,这里举例输出到Access数据库中,数据库为C盘的log4net.mdb-->
    <appender name="AdoNetAppender_Access" type="log4net.Appender.AdoNetAppender">
      <connectionString value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:log4net.mdb" />
      <commandText value="INSERT INTO LogDetails ([LogDate],[Thread],[Level],[Logger],[Message]) VALUES (@logDate, @thread, @logLevel, @logger,@message)" />
      <!--定义各个参数-->
      <parameter>
        <parameterName value="@logDate" />
        <dbType value="String" />
        <size value="240" />
        <layout type="log4net.Layout.PatternLayout"

转载于:https://www.cnblogs.com/itjeff/p/5699605.html

你可能感兴趣的文章
tungsten
查看>>
好程序员大数据技术盘点 你都知道吗
查看>>
Centos kvm桥接
查看>>
首批5G手机有多贵?中国移动:至少8000元以上吧
查看>>
Windows 10搜索不起作用,该怎么办?
查看>>
升级zabbix2.0.0
查看>>
购买笔记本电脑的要点品牌篇
查看>>
IBM:四大路径推进云计算落地
查看>>
一、安装mysql、mysql基础、mysql常用命令、数据表以及数据类型
查看>>
二分图和匈牙利算法
查看>>
我的友情链接
查看>>
使用weinre远程调试
查看>>
Python——多态
查看>>
Keepalived+nginx双主互备模型实现
查看>>
cookie安全性探究
查看>>
写程序卖程序第一次赚台币、收美金的经验分享,亲身体会分享
查看>>
阿里云ECS无法发送邮件
查看>>
我的友情链接
查看>>
网络工程师专业词汇解释(交换机)
查看>>
[杭电ACM]3336Count the string
查看>>