关于最新版本的log4net使用中遇到的问题

Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp.net应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。

它的下载地址:http://sourceforge.net/projects/quartznet/files/quartznet/

我们下载了最新版本后,发现它使用的Common.Logging.dll \Common.Logging.Core这二个dll是3.0.0.0版本的,这二个dll是什么作用呢,我简要概述一下

Common.Logging.dll 通用日志接口

Common.Logging.Core 包含 Common.Logging 低级抽象常见到其他所有的 Common.Logging 软件包的便携式 (PCL) 实现。(通俗的讲就是帮你实现了读取配置文件实现你想要的log,比如你想用log4net,直接在配置文件中配置一下,就可以直接在项目中使用,具体的实现由它来帮你完成)。

接下来我们是使用log4net作为日志,这里不要下载最新的版本,因为Common.Logging的版本限制了你使用最新的。这中间为了让你少走弯路,你直接用程序包管理控制台,输入

PM>Install-Package Common.Logging.Log4Net1211 -Version 3.0.0,然后程序会自动安装,包括log4net也会找到适应的版本进行安装,如果你不是这样做,会出现各种各样的问题,最常见的问题是Failed obtaining configuration for Common.Logging from configuration。这个问题一是因为版本不正确,二是因为配置文件,你的配置文件要对应你的dll名称。

接着配置文件配置一下,就可以实现我们想要的日志管理了。建议大家直接在工具→Nuget程序包管理器→程序包管理器中→输入Install-Package Common.Logging.Log4Net1211 -Version 3.0.0,这样做的好处是你不用在担心各个组件之间的版本问题。最后我把配置文件贴一下。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <sectionGroup name="common">
      <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
    </sectionGroup>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  </configSections>
  <log4net>
    <root>
      <!--控制级别,由低到高: ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF-->
      <!--比如定义级别为INFO,则INFO级别向下的级别,比如DEBUG日志将不会被记录-->
      <!--如果没有定义LEVEL的值,则缺省为DEBUG-->
      <level value="ALL" />
      <appender-ref ref="InfoFileAppender" />
      <appender-ref ref="RollingFileAppender" />
      <appender-ref ref="ConsoleAppender" />
    </root>
    <appender name="InfoFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="log/" />
      <appendToFile value="true" />
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <rollingStyle value="Date" />
      <maxSizeRollBackups value="100" />
      <maximumFileSize value="1024KB" />
      <staticLogFileName value="false" />
      <Encoding value="UTF-8" />
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="INFO" />
        <param name="LevelMax" value="INFO" />
      </filter>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date %-5level %logger  - %message%newline" />
      </layout>
    </appender>
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="Log/" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <!--<datePattern value="yyyyMMdd-HHmm" />-->
      <datePattern value="yyyyMMdd" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread](%file:%line) %-5level %logger [%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>
  </log4net>
  <common>
    <logging>
      <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4net1211">
        <arg key="configType" value="INLINE" />
        <!-- FILE,FILE-WATCH,INLINE,EXTERNAL 如果要是file 需要指定configFile -->
        <!--<arg key="configFile" value="~/Log4NET.xml"/>-->
      </factoryAdapter>
    </logging>
  </common>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
</configuration>

最后附几个问题,第一个是Failed obtaining configuration for Common.Logging from configuration section 'common/logging'.出现这个问题是因为Common.Logging.Log4net,你需要把它改为Common.Logging.Log4net1211。第二个问题就是说版本不一致,一般是指loger4net,你看一下你的debug文件夹下的版本,因为你使用了nuget,但是编译后的文件可能没有替换。

遨游在知识的海洋,深入技术的研究

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ExtJs简介: Extjs在经过两年的发展,Ext JS从2.0版开始,越来越受用户欢迎,今年,Extjs不但推出3.0版本,而且还推出了Ext Core,准备在Web2.0网站开发占一席之地,如在 Extjs2.x版本为人所诟病的速度问题在ExtJs3.0有所改善。不过,最革命性的改变还是ExtJs新增的Ext.Direct功能,它实现了服务器端的无关性。 在3.2版本,Ext将增加移动组件,进军移动市场,这将是一次革命性的改进,同时在4.0版本,除了对HTML5的支持外,还增加画布功能。 还有一点更值得期待,就是Ext的RAD开发工具也在开发当。估计在不久之后,也可以向VB,C#一样,通过可视化工具拖拽方式即可轻松开发Web应用。 ExtJs在发展过程不仅一步步地巩固着自己在HTML、CSS、JavaScript领域无可比拟的优势,而且已经开始向相关领域发展扩张。如从2.02版开始为Adobe的RIA技术AIR提供支持,并且为GWT开发了Ext GWT2.0,这些都体现了ExtJs的强大活力和生命力。 在可预见的未来,ExtJs将会甩开对手,大踏步向前。 ExtJs的前景: ExtJS的前景是非常好的,现在的QQ2009的登录界面以及使用,迅雷最新版的主界面,都能够找到这个框架的踪迹。web QQ也是有一个技术版本是使用这种框架的,所以,可以看出,extjs的应用,是越来越广泛了,extjs的前景,不可估量,不论站在技术开发的层次还是大部分用户的使用体验。 国讯教育通用智能OA办公系统项目培训目标 本系列讲座分为四大部分: 1、ExtJs基础篇:主要介绍Ext Core的一些核心功能 2、ExtJs进阶篇:主要介绍ExtJs里的常用组件,容器及布局 3、ExtJs数据篇:主要介绍和数据库交互的相关组件及CRUD功能 4、项目实战篇: Extjs3.2+ASP.NET七层架构+设计模式+ log4j+WebSerice等技术国讯教育通用智能OA办公平台 适用对象 1、要求有一定的javascript语言和HTML,CSS基础的学员 2、有一定的Asp.net网页编程基础和C#语言基础 3、有志于从事富客户端技术ExtJs的学习与研究的学生及专业Web开发人员 模块介绍 1、ExtJs基础篇-ExtJs快速入门 1.1、ExtJs基础篇(1):ExtJs概述与环境配置及架构剖析 1.2、ExtJs基础篇(2):ExtJs OOP基础 1.3、ExtJs基础篇(3):ExtJs 核心函数简介 1.4、ExtJs基础篇(4):ExtJs的模板详解(1) 1.5、ExtJs基础篇(5):ExtJs的模板详解(2) 2、ExtJs进阶篇:Extjs进阶 2.1、大话ExtJs的布局 2.2、ExtJs的常见组件 2.3、ExtJs的面板及Window窗口 2.4、ExtJs的选项卡面板 2.5、ExtJs的对话框与Combox组件 2.6、ExtJs的ExtTree详解 3、ExtJs数据篇 3.1、数据存储基本单元Record与DataField详解 3.2、数据存储Store详解1 3.3、数据存储Store详解2 3.4、数据代理DataProxy详解 3.5、数据读取器DataReader详解 3.6、Ext.Direct详解1 3.7、Ext.Direct详解2 4、ExtJs实战篇—国讯教育通用智能OA办公平台 (共70讲) 4.1、系统业务流程主功能结构分析 4.2、数据库设计 4.3、抽象工厂+反射七层架构设计 4.4、首页布局设计 4.5、人事管理模块分析设计 4.6、个人专区模块分析设计 4.7、日程管理区模块分析设计 4.8、文档管理模块分析设计 4.9、工单管理模块分析设计 4.10、工资管理模块分析设计 4.11、内部邮箱模块分析设计 4.12、系统管理模块分析设计 4.13、考勤管理模块分析设计 4.14、消息管理模块分析设计 4.15、日志管理 4.16、报表打印及数据统计 4.17、数据导入导出管理 本项目所涉及到的技术: 数据库方面: 1、PD数据库建模 2、SQL Server2005视图、存储过程、用户自定义函数、触发器 ASP.net方面: 1、ASP.net PetShop七层架构 2、抽象工厂+反射+配置文件实现数据库无缝切换 3、序列化/反序列化+泛型集合的应用 4、利用ASP.net HttpHandler实现防盗链 5、网站安全性方面:ASP.net防SQL注入及Web Service Soap头加密技术 6、AS
### 回答1: log4net是一个功能强大的日志记录工具,它可以让你以一种简单优雅的方式为你的应用程序记录日志,这对于应用程序的开发、测试、维护、调试都非常重要。log4net 1.2.11.0是其的一个旧版本,虽然已经被更新了,但在某些场景下仍然有用。 要下载log4net 1.2.11.0,你可以去官网https://logging.apache.org/log4net/下载最新版本的log4net。在历史版本的列表,你可以找到1.2.11.0版本,并下载下来。此外,你也可以使用类似NuGet、Maven这样的软件包管理器来获取log4net 1.2.11.0。这些工具可以自动处理版本依赖关系,从而方便地安装、更新、卸载log4net。 在下载log4net 1.2.11.0之后,你需要在你的应用程序添加log4net库的引用,并设置配置文件,这样你就可以在应用程序对日志进行记录。 需要注意的是,log4net 1.2.11.0已经过时了,可能存在安全漏洞和性能问题。因此,在使用log4net时,建议使用最新版本,以获取更好的体验、功能和性能,并降低安全风险。 ### 回答2: 要下载 log4net 1.2.11.0,你可以采取以下步骤: 1. 首先,打开你的互联网浏览器(如谷歌浏览器、火狐浏览器等)。 2. 进入 log4net 的官方网站,官方网址是 "https://logging.apache.org/log4net/"。 3. 在官方网站的首页,你可以看到一个名为 "Downloads"(下载)的标签或链接。请点击该标签或链接。 4. 下拉页面,找到 "Download the latest release (binary and source code)"(下载最新发布的二进制文件和源代码)的部分。 5. 在 "Main Release"(主要版本)找到 "log4net 1.2.11.0",并点击对应的下载链接。 6. 如果需要,选择你想要下载的文件类型,通常是二进制文件(.zip 或 .tar.gz 格式)或源代码文件(.zip 或 .tar.gz 格式)。 7. 开始下载。这可能需要一些时间,具体取决于你的互联网连接速度。 8. 下载完成后,找到下载的文件在你的计算机上的位置。 9. 解压下载的文件,得到 log4net 1.2.11.0 版本的应用程序或源代码。 现在,你已成功下载 log4net 1.2.11.0 版本。可以使用它来进行日志记录和日志管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值