log4Net不能成功生成日志问题(关于配置错误)

调试发现问题原因在于  Log4Net IsInfoEnabled 一直为 false,返回的对象中所有 IsXXX 一直为false,这个问题的原因在于配置文件读取失败。

配置方式有两种:

1、直接在web.config 中配置,可如下

  1. <configSections>
  2. <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  3. </configSections>
  4.  
  5. <log4net>
  6. <!-- 设置日志记录方式 -->
  7. <appender name="LogFileAppender" type="log4net.Appender.FileAppender, log4net">
  8. <param name="File" value="D:\\Senderlog.txt" />
  9. <param name="AppendToFile" value="false" />
  10. <layout type="log4net.Layout.PatternLayout, log4net">
  11. <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n" />
  12. </layout>
  13. </appender>
  14. <!--<appender name="Console" type="log4net.Appender.ConsoleAppender, log4net">
  15. <layout type="log4net.Layout.PatternLayout">
  16. <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
  17. </layout>
  18. </appender>-->
  19. <!-- 设置日志记录级别 -->
  20. <root>
  21. <priority value="INFO" />
  22. <appender-ref ref="LogFileAppender" />
  23. </root>
  24. <!-- Specify the level for some specific namespaces -->
  25. <!-- Level can be : ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF -->
  26. <logger name="Sender" additivity="true">
  27. <level value="INFO" />
  28. <appender-ref ref="LogFileAppender" />
  29. </logger>
  30. </log4net>

2、直接新建如log4net.config 的配置文件,如下

  1. <log4net>
  2. <!-- 设置日志记录方式 -->
  3. <appender name="LogFileAppender" type="log4net.Appender.FileAppender, log4net">
  4. <param name="File" value="D:\\Senderlog.txt" />
  5. <param name="AppendToFile" value="false" />
  6. <layout type="log4net.Layout.PatternLayout, log4net">
  7. <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n" />
  8. </layout>
  9. </appender>
  10. <!--<appender name="Console" type="log4net.Appender.ConsoleAppender, log4net">
  11. <layout type="log4net.Layout.PatternLayout">
  12. <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
  13. </layout>
  14. </appender>-->
  15. <!-- 设置日志记录级别 -->
  16. <root>
  17. <priority value="INFO" />
  18. <appender-ref ref="LogFileAppender" />
  19. </root>
  20. <!-- Specify the level for some specific namespaces -->
  21. <!-- Level can be : ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF -->
  22. <logger name="Sender" additivity="true">
  23. <level value="INFO" />
  24. <appender-ref ref="LogFileAppender" />
  25. </logger>
  26. </log4net>

这两种配置方法的区别在与读取配置文件

方法1中读取方式是这样的:

log4net.Config.XmlConfigurator.Configure();  //这个地方是注册log4net 配置

或在AssemblyInfo.cs文件中添加

[assembly: log4net.Config .XmlConfigurator()]

方法2中则需要指定配置文件

log4net.Config.XmlConfigurator.Configure("文件信息");  //这个地方是注册log4net 配置,感兴趣的朋友可以根据下图进行相关配置,总之这个地方的效果和其它方法是一样的,目的都是为了加载log4net 中的相关配置信息。

或在AssemblyInfo.cs文件中添加

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", ConfigFileExtension = "config", Watch = true)]
这句的意思是 找到名称为 log4net.config 的配置文件,不一定是web.config

log4Net不能成功生成日志问题(关于配置错误)的更多相关文章

  1. C# 开发 Windows 服务 使用Log4net 组件 不能生成日志文件

    使用VS2012开发Windows服务,需要使用Log4net日志组件记录业务情况,但是始终生成不了日志文件. /// <summary> /// 入口方法 /// </summar ...

  2. (一)使用log4net生成日志文件

    1.引入log4net.dll 1.1 Nuget安装 或 http://logging.apache.org/log4net/下载log4net的源代码,编译后把log4net.dll引入项目. 2 ...

  3. 使用log4net生成日志文件

    (一)使用log4net生成日志文件   1.引入log4net.dll 1.1 Nuget安装 或 http://logging.apache.org/log4net/下载log4net的源代码,编 ...

  4. C#反射实现 C# 反射 判断类的延伸类型 使用代码生成工具Database2Sharp快速生成工作流模块控制器和视图代码 C# ADO.NET的SqlDataReader对象,判断是否包含指定字段 页面中添加锚点的几种方式 .net 简单实用Log4net(多个日志配置文件) C# 常用小点

    C#反射实现   一.反射概念: 1.概念: 反射,通俗的讲就是我们在只知道一个对象的内部而不了解内部结构的情况下,通过反射这个技术可以使我们明确这个对象的内部实现. 在.NET中,反射是重要的机制, ...

  5. log4net日志的简单配置

    说起来log4net,我一直都知道这个的存在,但实际在项目中还真是没有去自己写过的那,这一次我在项目完成后并没有着急下一个项目的开始,于是突然想起来是否添加一个日志的编写,于是开始了log4net的总 ...

  6. log4net 日志框架的配置

    log4net 日志框架的配置——静态文件(一) 添加对log4net程序集的引用 选择程序集文件添加引用即可,需要注意的是需要添加相应程序版本的程序集,如果你的应用是基于.netFramework2 ...

  7. log4j自动生成日志文件配置

    生成文件到默认位置: #生成日志文件 #log4j.appender.systemFile=org.apache.log4j.RollingFileAppender #按天生成 log4j.appen ...

  8. NGINX按天生成日志文件的简易配置

    NGINX按天生成日志文件的简易配置 0x01 最近后端童鞋遇到一个小需求,拆分nginx生成的log文件,最好是按天生成,看着她还有很多bug待改的状态,我说这个简单啊,我来吧.曾经搞node后端的 ...

  9. 通过配置JVM参数解决生成日志存在乱码问题

    项目上生产环境时出现一个问题,生成的日志文件存在乱码,服务器编码为 LANG=zh_US.UTF-8,按理说中文不会存在乱码,这里存在一个问题,就是在SIT等其他环境我们使用的连接工具为Xshell, ...

随机推荐

  1. Zencart视频教程 Zencart模板制作教程视频 Zencart仿站教程资料

    Zen Cart是国外一个免费的.界面友好,开放式源码的购物车软件,是目前外贸行业使用最为广泛的网站程序.本仿站技术需要你有一定的html和css基础,易学易懂,一步一步地教你操作和使用Zen Car ...

  2. C#扩展方法知多少

    前言:上篇 序列化效率比拼——谁是最后的赢家Newtonsoft.Json 介绍了下序列化方面的知识.看过Demo的朋友可能注意到了里面就用到过泛型的扩展方法,本篇打算总结下C#扩展方法的用法.博主打 ...

  3. 79 umount-卸除目前挂在Linux目录中的文件系统

    Linux umount命令用于卸除文件系统. umount可卸除目前挂在Linux目录中的文件系统. 语法 umount [-ahnrvV][-t <文件系统类型>][文件系统] 参数: ...

  4. grails框架的g:paginate分页标签的使用

    我用到的grails是2.4.4. 该版本下游一个标签g:paginate 该标签下有以下几个参数:total(必须要填写的项).controller.action.prev.max.offset等等 ...

  5. excel出现错误1327 无效的驱动器

    错误描述:错误1327 无效的驱动器 错误程序:excel 2003   这是office安装源的位置被移动造 成的的,大部分时候安装时可能使用了移动硬盘或者在安装后调整了盘符就会造成这个问题.官方的 ...

  6. WebService返回DataTable

    http://blog.csdn.net/wxnjob/article/details/8638420 webservice返回datatable时报序列化错误 以下三种方案的实质应该都是序列化的,有 ...

  7. 加载未安装APK中的类

    一.前提 目的:动态加载SD卡中Apk的类. 注意:被加载的APK是未安装的. 相关:本文是本博另外一篇文章:Android动态加载jar/dex的升级版. 截图: 成功截图: 二.准备 准备被调用A ...

  8. jQuery5~7章笔记 和 1~3章的复习笔记

    JQery-05 对表单和表格的操作及其的应用 JQery-06 jQuery和ajax的应用 JQery-07 jQuery插件的使用和写法 JQery-01-03 复习 之前手写的笔记.实在懒得再 ...

  9. C#中时间的比较

    项目中需求,要求一个线程必须待够一定时间才允许停止,那么就涉及到一个时间的比较与线程的sleep var threadTimeOut= DateTime.Now.AddMinutes(timeOutN ...

  10. [Unity3d]调试问题之UI/Image不显示

    问题描述 在项目中添加的UI/Image资源,在PC和通过Unity Remove测试都没有问题: PC上的效果 手机上Unity Remove测试结果 可真正发布到手机上运行则如下显示,说明imag ...