1.摘要

Common.Logging定义了一种接口的公共接口,尤其在Quartz.net中作为接口型的组件,而具体则使用log4net,nlog等组件。

2.使用步骤

Install-Package Common.Logging

安装公共日志组件

Install-Package log4net

安装log4net

Install-Package Common.Logging.Log4Net1211

安log4net对Common.Logging的适配库

3.配置文件

注意加粗部分

  1. <?xml version="1.0"?>
  2. <configuration>
  3.   <configSections>
  4.     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  5.     <sectionGroup name="common">
  6.       <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging"/>
  7.     </sectionGroup>
  8.   </configSections>
  9.   <common>
  10.     <logging>
  11.       <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net1211">
  12.         <arg key="configType" value="INLINE"/>
  13.       </factoryAdapter>
  14.     </logging>
  15.   </common>
  16.   <log4net>
  17.     <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
  18.       <layout type="log4net.Layout.PatternLayout">
  19.         <conversionPattern value="%d [%t] %-5p %l - %m%n"/>
  20.       </layout>
  21.     </appender>
  22.     <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
  23.       <layout type="log4net.Layout.PatternLayout">
  24.         <conversionPattern value="%d [%t] %-5p %l - %m%n"/>
  25.       </layout>
  26.     </appender>
  27.     <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
  28.       <param name="File" value="Log/" />
  29.       <!--<datePattern value="yyyyMMdd&quot;.txt&quot;" />-->
  30.       <appendToFile value="true"/>
  31.  
  32.       <!--Make the rolling file name with the date and size-->
  33.       <rollingStyle value="Composite"/>
  34.       <datePattern value="yyyy-MM-dd&quot;.txt&quot;"/>
  35.       <maxSizeRollBackups value="100"/>
  36.       <maximumFileSize value="2MB"/>
  37.  
  38.       <PreserveLogFileNameExtension value="true"/>
  39.       <staticLogFileName value="false"/>
  40.       <layout type="log4net.Layout.PatternLayout">
  41.         <param name="ConversionPattern" value="%d %-5p %m%n"/>
  42.       </layout>
  43.     </appender>
  44.     <root>
  45.       <level value="DEBUG"/>
  46.       <appender-ref ref="ConsoleAppender"/>
  47.       <appender-ref ref="RollingFileAppender"/>
  48.     </root>
  49.   </log4net>
  50.   <runtime>
  51.     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  52.       <dependentAssembly>
  53.         <assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral"/>
  54.         <bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0"/>
  55.       </dependentAssembly>
  56.       <dependentAssembly>
  57.         <assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral"/>
  58.         <bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0"/>
  59.       </dependentAssembly>
  60.     </assemblyBinding>
  61.   </runtime>
  62. </configuration>

4.样例代码

using Common.Logging;

。。。。。。

ILog log = LogManager.GetLogger(type);

if (log.IsDebugEnabled)

{

string strText = GetMessage("DEBUG", className, methodName, message);

log.Debug(strText);

}

。。。。。。

参考:http://www.tuicool.com/articles/JvIbM3

Comon.Logging与Log4net联合使用的更多相关文章

  1. Logging with Log4net (二)

    log4net 是.net 的一款日志记录框架. 它提供了很多的方法来帮助记录日志: 使用起来也比较方便: 选中项目,点击右键,然后选择 Manage NuGet Packages... 安装log4 ...

  2. 使用Common.Logging与log4net的组件版本兼容问题

    引用:  http://www.cnblogs.com/shijun/p/3713830.html 近期使用了Common.Logging的ILog接口做日志接口,同时利用其log4net适配器与lo ...

  3. Common.Logging log4net Common.Logging.Log4Net 配置

    1.log4net 单独配置 log4net支持多种格式的日志输出,我这里只配置输出到本地的txt文件这种格式. <log4net> <root> <appender-r ...

  4. 使用Common.Logging+log4net规范日志管理

    Common.Logging+(log4net/NLog/) common logging是一个通用日志接口,log4net是一个强大的具体实现,也可以用其它不同的实现,如EntLib的日志.NLog ...

  5. 使用Common.Logging+log4net规范日志管理【转载】

    使用Common.Logging+log4net规范日志管理   Common.Logging+(log4net/NLog/) common logging是一个通用日志接口,log4net是一个强大 ...

  6. Logging from multiple processes using log4net

    When logging with log4net to a file (using the FileAppender), the FileAppender is holding an exclusi ...

  7. 微软日志工厂 Microsoft.Extensions.Logging 中增加 log4net 的日志输出

    前提: 需要nuget   Microsoft.Extensions.Logging.Log4Net.AspNetCore   2.2.6: 描述:解决 .net core 微软日志工厂 Micros ...

  8. 基于Common.Logging + Log4Net实现的日志管理

    前言 Common.Logging 是Commons-Logging(apache最早提供的日志门面接口,提供了简单的日志实现以及日志解耦功能) 项目的.net版本.其目的是为 "所有的.n ...

  9. Log4net 日志使用介绍

    概述 Log4net 有三个主要组件:loggers,appenders 和 layouts.这三个组件一起工作使得开发者能够根据信息类型和等级(Level)记录信息,以及在运行时控制信息的格式化和信 ...

随机推荐

  1. zhx and contest (枚举  + dfs)

    zhx and contest Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  2. Spring+Quartz实现定时任务的配置方法

    1.Scheduler的配置 <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean" ...

  3. Windows性能计数器

    LogicalDisk\% Free Space 它测量选定逻辑磁盘上的可用空间百分比.请注意,如果此值低于 15%,则表示可用空间不足,操作系统无法存储关键文件.一个最直接的解决方案是增加更多的磁盘 ...

  4. [Effective JavaScript 笔记] 第7条:视字符串为16位的代码单元序列

    Unicode编码,基础:它为世界上所有的文字系统的每个字符单位分配一个唯一的整数,该整数介于0~1114111之间,在Unicode术语中称为代码点(code point). 和其它字符编码几乎没有 ...

  5. ios数据库

    1. ios数据库管理软件 ios使用的数据库是sqlite 管理软件有2种, 我只记得一种, 名字叫做 MesaSQLite 2. sqlite数据库 2.1.修改表结构 ①:更改字段类型长度 AL ...

  6. ZJOI Day 2 游记

    ---恢复内容开始--- 去ZJOI Day 2打了一会酱油...各种神犇大爷都来屠,南外的小朋友也来屠我们了真是感动...没有看到毛爷爷真是可惜.. Day[-1] 早上还在上课,吃完中饭立马跑去找 ...

  7. ASP.NET 画图与图像处理-如何直接输出到页面

    有时候我们生成的图片并不需要保存到磁盘中,而是直接输出到页面,比如验证码.实时报表等,如何做呢?请参考如下:     protected void Page_Load(object sender, E ...

  8. In-App Purchases验证

    package com.demo.controller.web.app; import java.io.BufferedOutputStream; import java.io.BufferedRea ...

  9. HAST 使用笔记

    1.环境 2台 freebsd 9.2的机器,/home分区为260G,需要将其转为hast块设备 2.安装 (1)先umount /home,然后注释掉/etc/fstab上的/home记录: # ...

  10. 【转】SQL删除重复记录,只保留其中一条

    SQL:删除重复数据,只保留一条用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢 1.查找表中多余的重复记录,重复记录是根据单个字段(peop ...