好久没用这个组件了,今天拿一用,居然还不成功,气死了,找了半天网上也没找到,后来找到一篇新手文章,解决了,主要步骤如下:

一.下载组件以及引用

(1)去http://logging.apache.org/log4net/下载最新组件

(2)添加引用log4net.dll

二.增加配置

Code
<configSections>
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
  </configSections>
  <log4net>
    <!--定义输出到文件中-->
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
      <!--定义文件存放位置-->
      <file value="log\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数据库中,数据库为d盘的log4net.mdb-->
    <appender name="AdoNetAppender_Access" type="log4net.Appender.AdoNetAppender">
      <connectionString value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=log\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">
          <conversionPattern value="%date" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@thread" />
        <dbType value="String" />
        <size value="240" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%thread" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@logLevel" />
        <dbType value="String" />
        <size value="240" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%level" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@logger" />
        <dbType value="String" />
        <size value="240" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%logger" />
        </layout>
      </parameter>
      <parameter>
        <parameterName value="@message" />
        <dbType value="String" />
        <size value="240" />
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%message" />
        </layout>
      </parameter>
    </appender>
    <!--定义日志的输出媒介,下面定义日志以四种方式输出。也可以下面的按照一种类型或其他类型输出。-->
    <root>
      <!--文件形式记录日志-->
      <appender-ref ref="LogFileAppender" />
      <!--控制台控制显示日志-->
      <!--<appender-ref ref="ConsoleAppender" />-->
      <!--Windows事件日志-->
      <!--<appender-ref ref="EventLogAppender" />-->
      <!-- 如果不启用相应的日志记录,可以通过这种方式注释掉-->
      <!--<appender-ref ref="AdoNetAppender_Access" />-->
    </root>
  </log4net>

三.应用配置

在AssemblyInfo.cs文件中增加如下一句(重要)

[assembly: log4net.Config.XmlConfigurator(Watch = true)]

我就是忘记最后一句找了半天.呵呵~~~

转载于:https://www.cnblogs.com/wudingfeng/archive/2009/02/24/1397283.html

log4net简介(三)之无法写入日志相关推荐

  1. 三种Cache写入方式原理简介

    三种Cache写入方式原理简介 在386以上档次的微机中,为了提高系统效率,普遍采用Cache(高速缓冲存储器),现在的系统甚至可以拥有多级Cache.Cache实际上是位于CPU与DRAM主存储器之 ...

  2. log4net异步写入日志_微信支付万亿日志在Hermes中的实践

    导语 | 微信支付日志系统利用 Hermes 来实现日志的全文检索功能,自从接入以来,日志量持续增长.目前单日入库日志量已经突破万亿级,单集群日入库规模也已经突破了万亿,存储规模达 PB 级.本文将介 ...

  3. mysql 事物状态有几种_mysql第三章 事务以及日志

    mysql第三章 事务以及日志 一. 事物简介 每条DDL DCL语句都是事务. 每个begin 到coomit语句是一个事务 二. 事物特性ACID以及开启方式 1. 原子性(A),部成功执行或全部 ...

  4. Mysql(三) Mysq慢查询日志

    Mysql Slow Query Log MYSQL慢查询日志是用来记录执行时间超过指定时间的查询语句.通过慢查询日志,可以查找出哪些查询语句的执行效率很低,以便进行优化.一般建议开启,它对服务器性能 ...

  5. Python3之logging输出写入日志

    Python3之logging模块浅析 目录 Python3之logging模块浅析 简单用法 日志与控制台同时输出 一个同时输出到屏幕.文件的完成例子 日志文件截取 日志重复打印问题解决 问题分析 ...

  6. LINUX学习基础篇(三十五)日志管理

    LINUX学习基础篇(三十五)日志管理 日志管理 系统中常见的日志文件 日志文件格式 rsyslogd服务的配置文件 日志轮替 logrotate配置文件 配置文件夹 /etc/logrotate.d ...

  7. php写入记录日志,【转】PHP错误处理写入日志记录

    ?php /** * PHP错误处理写入日志记录 * @author: lnnujxxy * @time: 2009-09-23 * //使用方法: * require './error_handle ...

  8. Python编程基础:第三十二节 文件写入Write a File

    第三十二节 文件写入Write a File 前言 实践 前言 这一节我们学习如何将字符串写入文件,所用到的函数是write(). 实践 首先我们定义要写入文件的字符串: text = "Y ...

  9. php 日志函数,php 写入日志函数

    本篇文章介绍的内容是关于php 写入日志函数,现在分享给大家,有需要的朋友可以参考一下public static function log($var, $file = ''){ $file = LOG ...

最新文章

  1. 微信公众号开发小记——4.两种邀请用户的方式 扫码链接
  2. 全球及中国手持式无线电台行业十四五发展动态及前景趋势调研报告2022-2027年
  3. 如何使用IIS重写模块将HTTP重定向到HTTPS
  4. MySQL中使用adddate函数产生随机日期+时间
  5. 游戏中的影子制作技术
  6. Java基础93 JDBC连接MySQL数据库
  7. Atitit 前后端交互模式 目录 1.1. Ajax 1 1.2. Fetch api 1 1.3. 服务端脚本模式(简单快速) 1 1.4. 浏览器注入对象、函数 1 1.5. 浏览器插件模式
  8. 随笔:读书笔记--《九败一胜:美团创始人王兴创业十年》
  9. AVC/HEVC/VVC/AV1 帧间预测:运动估计、运动补偿
  10. 通过微信code获取微信openid
  11. 【SAP-SD】物料 X 未对销售组织 XXXX 分销渠道 X 语言 DE 定义
  12. Data URL和图片
  13. 蓝牙linux驱动源代码,基于Linux蓝牙无线模块USB驱动程序开发.pdf
  14. Vue 引入 sematic-ui Vue
  15. Scheme:点对(dotted pair,或pair)
  16. 自动驾驶落地,究竟被什么「绑」住了脚?
  17. c# 使用Office com组件时遇到的问题
  18. 四川企立方:拼多多不开推广能做起来吗
  19. 计算机网络管理员述职报告,网络管理员述职报告
  20. 手机即时通服务器地址修改,手机即时通服务器地址修改

热门文章

  1. Jenkins: 执行 PowerShell 命令
  2. php.ini文件找不到
  3. JMeter + influxdb + grafana框架安装
  4. 海报推广神器:活码加多级加密跳转防封双重保护
  5. 串行总线---差分互连(差分线)之共模、奇模、偶模
  6. Eclipse中CVS版本管理
  7. 一名作曲专业毕业生的安全架构师之路
  8. 结构体字节对齐(转)
  9. ngnix服务器搭建
  10. 关于在本地idea当中提交spark代码到远程的错误总结(第二篇)