第一步: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. 【总结整理】WebGIS学习-thinkGIS(三):关于影像金字塔、瓦片行列号、分辨率resolution

    http://www.thinkgis.cn/topic/541a5206da8db186fd0673ba 1.前言 在上一节中我们知道了屏幕上一像素等于实际中多少单位长度(米或经纬度)的换算方法,而 ...

  2. 在Oracle 12C中使用scott账号

    在Oracle11g中默认是有scott账号的,但在Oracle 12C中则不能直接使用. 我的机器环境: 操作系统:Windows Server 2008 R2 64位 Oracle版本:Oracl ...

  3. 一个ButtonDemo的实现过程。

    来自JDK API 1.6.0: Try this: Click the Launch button to run the Button Demo using Java™ Web Start (dow ...

  4. R: 关于文件 文件夹的处理:file.show() dir.create().....

    文件管理主要函数: setwd( ):设定R软件当前工作目录.getwd( ):查看R软件当前工作目录.list.files( ): 查看当前目录下文件.file.show( ): 显示文件.file ...

  5. 解决java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext问题

    使用ClassPathXmlApplicationContext加载项目时, ClassPathXmlApplicationContext context = new ClassPathXmlAppl ...

  6. [学习笔记]fork写实复制

    #include<stdio.h> #include<stdlib.h> #include<string.h> #include <unistd.h> ...

  7. ubuntu配置静态路由

    1. #ifconfig 注意 eth0为你要配置的interfase 2. #vi /etc/network/interfaces # This file describes the network ...

  8. Gazebo学习随记1 Gazebo概览

    Gazebo组件 World 世界 包含模拟中所有的元素如机器人,灯光,传感器等等 使用SDF(模拟描述格式)格式化 [用XML语言描述] 拓展名.world Model 模型 只包含一个<mo ...

  9. MySQL 5.0的my.cnf配置选项(另外一种方式分类整理)

    一.   mysqld程序--目录和文件 basedir = path 使用给定目录作为根目录(安装目录). Show variables like “basedir”   //数据库中查看目录 da ...

  10. POI2011 Tree Rotations

    POI2011 Tree Rotations 给定一个n<=2e5个叶子的二叉树,可以交换每个点的左右子树.要求前序遍历叶子的逆序对最少. 由于对于当前结点x,交换左右子树,对于范围之外的逆序对 ...