第一步:config配置,独立文件的

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections> <log4net>
<!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->
<!-- Set root logger level to ERROR and its appenders -->
<root>
<level value="ALL"/>
<!--<appender-ref ref="SysAppender"/>-->
</root> <!-- Print only messages of level DEBUG or above in the packages -->
<logger name="SysAppenderLogger">
<level value="ALL"/>
<appender-ref ref="SysAppender"/>
</logger>
<appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" value="Logger/ttt/" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value="&quot;Logs_&quot;yyyyMMdd&quot;.txt&quot;" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
<param name="Header" value=" ----------------------header-------------------------- " />
<param name="Footer" value=" ----------------------footer-------------------------- " />
</layout>
</appender> <logger name="WeiXinResultLogger">
<level value="ALL"/>
<appender-ref ref="WeiXinResult"/>
</logger>
<appender name="WeiXinResult" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" value="Logger/weixinresult/" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value="&quot;Logs_&quot;yyyyMMdd&quot;.txt&quot;" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
<param name="Header" value=" ----------------------header-------------------------- " />
<param name="Footer" value=" ----------------------footer-------------------------- " />
</layout>
</appender> </log4net>
</configuration>

第二步:log4Helper配置

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web; [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"weixin\Log4.config", Watch = true)]
namespace SERP3.Common
{
/// <summary>
///错误记录日志
///注意:在需要记录log的类前加入[assembly: log4net.Config.XmlConfigurator(ConfigFile = @"weixin\Log4.config", Watch = true)]
/// </summary>
public class Log4Helper
{ //private static readonly log4net.ILog log = log4net.LogManager.GetLogger("SysAppender123Logger");
//private static log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);//动态获得名称 public Log4Helper()
{ } private static log4net.ILog log(string appenderName)
{
return log4net.LogManager.GetLogger(appenderName);
} public static void LogInfo(string Message, string appenderName = "defaultLogger")
{
log4net.ILog logger = log(appenderName);
if (logger.IsInfoEnabled) logger.Info(Message);
} public static void LogInfo(string appenderName, string Message, Exception ex)
{
log4net.ILog logger = log(appenderName);
if (logger.IsInfoEnabled)
logger.Info(Message, ex);
}
public static void ErrorInfo(string appenderName, string Message)
{
log4net.ILog logger = log(appenderName);
if (logger.IsInfoEnabled) logger.Error(Message);
} public static void ErrorInfo(string appenderName, string Message, Exception ex)
{
log4net.ILog logger = log(appenderName);
if (logger.IsInfoEnabled)
logger.Error(Message, ex);
}
//public static void DebugInfo(string appenderName, string Message)
//{
// if (!log(appenderName).IsInfoEnabled)
// SetConfig();
// log(appenderName).Debug(Message);
//} }
}

第三步:调用

try
{
Result result = CreateResult(xmlStr);
res = result.Save();
}
catch (Exception ex)
{
SERP3.Common.Log4Helper.ErrorInfo("WeiXinResultLogger",ex.Message+xmlStr,ex);
}

注意点:1.[assembly: log4net.Config.XmlConfigurator(ConfigFile = @"weixin\Log4.config", Watch = true)]

namespace SERP3.Common
{

Log4web独立config配置的更多相关文章

  1. Log4Net.Config配置信息《转》

    看了log4net的简单使用之一_log4net介绍 大家对log4net组件应该有了大概的了解,下面再近一步介绍其在项目中如何应用. 1.Logger 所有的记录器都必须实现 ILog 接口,该接口 ...

  2. SpringCloud的入门学习之概念理解、Config配置中心

    1.SpringCloud Config分布式配置中心.分布式系统面临的配置问题. 答:微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务.由于每个 ...

  3. SpringCloud之Config配置中心+BUS消息总线原理及其配置

    一.配置中心作用 在常规的开发中,每个微服务都包含代码和配置.其配置包含服务配置.各类开关和业务配置.如果系统结构中的微服务节点较少,那么常规的代码+配置的开发方式足以解决问题.当系统逐步迭代,其微服 ...

  4. Web.config配置数据库连接

    web.config配置数据库连接   第一种:取连接字符串 string connString = System.Web.Configuration.WebConfigurationManager. ...

  5. Asp.net Web.Config - 配置元素 caching

    Asp.net Web.Config - 配置元素 caching 记得之前在写缓存DEMO的时候,好像配置过这个元素,好像这个元素还有点常用. 一.caching元素列表   元素 说明 cache ...

  6. asp.net中web.config配置节点大全详解

    最近网上找了一些关于Web.config配置节点的文章,发现很多都写的都比较零散,而且很少有说明各个配置节点的作用和用法.搜索了一下发现有一篇写的不错,这里引用一下 原文地址 http://www.c ...

  7. 十五天精通WCF——第二天 告别烦恼的config配置

    经常搞wcf的基友们肯定会知道,当你的应用程序有很多的“服务引用”的时候,是不是有一种疯狂的感觉...从一个环境迁移到另外一个环境,你需要改变的 endpoint会超级tmd的多,简直就是搞死了人.. ...

  8. web.config配置详细说明

    (一).Web.Config是以XML文件规范存储,配置文件分为以下格式 1.配置节处理程序声明    特点:位于配置文件的顶部,包含在<configSections>标志中. 2.特定应 ...

  9. EF连接MySQL数据Web.Config配置

    EF连接MySQL数据Web.Config配置 <?xml version="1.0" encoding="utf-8"?> <configu ...

随机推荐

  1. Win10_禁用自动更新(官方版)

    1> win键>输入服务>打开>找到windowsUpdate-->启动类型为-禁用 -->> 恢复失三个选项改为-->>无操作 2>win ...

  2. 最短路径Dijkstar算法和Floyd算法详解(c语言版)

    博客转载自:https://blog.csdn.net/crescent__moon/article/details/16986765 先说说Dijkstra吧,这种算法只能求单源最短路径,那么什么是 ...

  3. DefaultHttpClient 在oppo A57手机上网络请求报错

    使用的库是xutils2.6.14,oppo A57 上调试的时候,请求接口时报错,但是其他手机都正常: com.lidroid.xutils.exception.HttpException: jav ...

  4. postgre教程

    http://www.yiibai.com/html/postgresql/2013/080890.html

  5. C#获取WINDOWS系统信息

    需引用System.Management命名空间, 具体代码如下: public class SysProp { public SysProp() { ManagementObjectSearcher ...

  6. 关于webapi练习过程中遇到的一系列问题记录

    最近在尝试本地进行webapi调用的过程中,遇到一系列的问题,demo很小但着实让人头疼,先附上demo. 前台页面,目的是展示新闻的分类: 类别模型如下: 控制器代码如下: public Actio ...

  7. SQLServer存储引擎——05.索引的结构和分类

    5. SQLServer存储引擎——索引的结构和分类 关系型数据库中以二维表来表达关系模型,表中的数据以页的形式存储在磁盘上,在SQL SERVER中,数据页是磁盘上8k的连续空间,那么,一个表的所有 ...

  8. 动态合并GridView数据行DataRow的列

    前段时间,Insus.NET一直在演示GridView控件Header头行或列:<动态变更GridView控件列名>和<动态合并或定制GridView控件Header头某些列> ...

  9. sonar Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.4.0.905:sonar

    背景: 今天在项目根目录执行maven sonar:sonar ,报错信息如下,然后就各种的搜,折腾了多半天天也没找出解决办法,最后打算放弃时,看到一遍文章说是mysql  max_allowed_p ...

  10. iOS开发图片与颜色处理工具

    1.根据颜色生成一张图片 /** 根据颜色生成一张图片 @param color 颜色进制 UIColor类型 @return 一张UIImage图片 */ + (UIImage *)createIm ...