`
annan211
  • 浏览: 466461 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

log4j.xml 配置日志

 
阅读更多
log4j.xml 配置系统日志 详细请参考www.cezuwang.com

1 定义log4j.xml

<!-- 输出日志到文件  文件大小到达指定尺寸的时候产生一个新的文件 -->  
    <appender name="appServerLog" class="org.apache.log4j.RollingFileAppender">  
        <param name="File" value="logs/AppServerLog.log"></param>  
        <param name="ImmediateFlush" value="true"/>  
        <param name="Threshold" value="info"></param>  
        <param name="Append" value="true"></param>  
        <param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />     
        <param name="MaxFileSize" value="102400KB"></param>  
        <param name="MaxBackupIndex" value="100"></param>  
        <layout class="org.apache.log4j.PatternLayout">  
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %p [%c-%M-%L]:%m%n"></param>  
        </layout>  
    </appender> 


2 定义spring 日志切面

<!-- 日志切面类 -->
   <bean id="logInterceptor" class="com.utcip.server.common.interceptor.AppServiceInterceptorLog"/>  
	
    <aop:config>  
         <aop:aspect id="securityAspect" ref="logInterceptor">  
             <aop:pointcut id="logMethod" expression="execution(* com.utcip.server.*.service.impl.*.*.*(..))  and args(..)"/> 
             <aop:before method="beforeMethod" pointcut-ref="logMethod"/>  
             <!-- <aop:after method="afterMethod" pointcut-ref="logMethod"/>  --> 
         </aop:aspect>  
     </aop:config> 


/**
 * 接口日志切面
 * @author jingfangnan
 *
 */
public class AppServiceInterceptorLog {
	
	/**
	 * 前置切入
	 */
	public void beforeMethod(JoinPoint jp){
		String className = jp.getSignature().getDeclaringTypeName();
		String methodName = jp.getSignature().getName();
		
		Object[] args = jp.getArgs(); 
		AppServiceLog.info("on {} the params of {}.{} is {} ",AppUtils.getDisplayDate(new Date()),
				className,methodName,
				Arrays.toString(args));
	}
	
	/**
	 * 后置切入
	 */
	public void afterMethod(JoinPoint jp){
		String className = jp.getSignature().getDeclaringTypeName();
		String methodName = jp.getSignature().getName();
		Object[] args = jp.getArgs(); 
		
		AppServiceLog.info("on {} the result  is{}",AppUtils.getDisplayDate(new Date()),
				className,methodName,
				Arrays.toString(args));
	}
}


3 日志切面中 引用log4j.xml 定义的日志标记

/**
 * 接口自定义日志输出
 * @author jingfangnan
 *
 */
public class AppServiceLog {
	/** The log. */
	private final static  Logger log = LoggerFactory.getLogger(LoggerSpecialEnum.AppServerLog.value());  
	
	public static void log(String value, Object ... params){
		log.debug(value,params);
	}
	
	public static void info(String value, Object ... params){
		log.info(value,params);
	}
	
	public static void warn(String value, Object ... params){
		log.warn(value,params);
	}
	
	public static void error(String message,Exception e){
		log.error(message,e);
	}
	
	public static void error(String message, Object ... params){
		log.error(message, params);
	}
	
	public static boolean isInfoEnabled(){
		return log.isInfoEnabled();
	}
}


4 日志打印输出类中  引用log4j.xml 中的定义

/**
 * 日志枚举
 * @author jingfangnan
 *
 */
public enum LoggerSpecialEnum {
	
	// 接口类日志
	AppServerLog("appServerLog", "自定义接口日志")
		
	;
		
	private final String value;
	private final String desc;

	private LoggerSpecialEnum(final String value, final String desc) {
		this.value = value;
		this.desc = desc;
	}

	public  String value() {
		return this.value;
	}

	public String desc() {
		return this.desc;
	}
		
}


至此 就可以在指定的层面打印出相关日志了
分享到:
评论

相关推荐

    log4j的详细配置,log4j.xml和log4j.properties,日志输出到文件,邮件,数据库,控制台等

    1. **XML配置** (`log4j.xml`) - **基本结构**:`log4j.xml`文件遵循XML语法,根元素是`&lt;configuration&gt;`,包含`&lt;appenders&gt;`, `&lt;loggers&gt;`, `&lt;root&gt;`等子元素。 - **Appenders**:这是定义日志输出目标的地方,...

    log4j与web.xml的配置

    4. **通过web.xml配置Log4j** - 在web.xml中,我们可以使用`&lt;context-param&gt;`标签来指定Log4j配置文件的位置,例如: ```xml &lt;param-name&gt;log4jConfigLocation &lt;param-value&gt;/WEB-INF/classes/log4j....

    log4j.jar及log4j.xml

    以上内容详细介绍了Log4j.jar的核心组件和log4j.xml配置文件的作用,它们共同构成了Log4j日志框架的基础。通过合理的配置和使用,Log4j能够为开发者提供强大且灵活的日志管理能力,帮助他们更好地监控和维护Java应用...

    Log4j2学习log4j2.xml配置模板

    *灵活的配置:Log4j2 提供了非常灵活的配置机制,可以根据需要定义不同的日志级别、输出格式和文件名等属性。 *高性能:Log4j2具有非常高的性能,可以handle大量的日志信息。 *灵活的appender:Log4j2 提供了多种...

    log4j2.xml记录日志到到数据库

    总结,Log4j2通过XML配置文件实现了与MySQL数据库的集成,允许开发者将日志信息存储在数据库中,便于长期保存和分析。理解Log4j2的配置和使用是每个Java开发者必备的技能,这对于日后的故障排查和系统维护至关重要。...

    Log4J.xml的模板

    标题中的“Log4J.xml”指的是Apache Log4j框架的配置文件。...如果这个文件是关于日志分析或配置的一部分,那么它可能包含了某个系统的日志记录或页面展示内容,但这超出了Log4J.xml配置文件的讨论范围。

    项目配置文件( spring-mvc.xml spring-mybatis.xml web.xml log4j.properties)

    这里提到的四个关键配置文件——`spring-mvc.xml`、`spring-mybatis.xml`、`web.xml`以及`log4j.properties`,对于一个基于Java的Web应用来说至关重要,特别是使用Spring MVC和MyBatis框架的时候。接下来,我们将...

    log4j.xml

    理解并熟练运用log4j.xml配置文件,能够使日志记录更加灵活、高效,便于调试和问题排查。通过调整不同的配置,我们可以控制日志的级别、格式、输出位置,以及过滤不必要信息,从而优化应用性能,提高开发效率。 ...

    日志配置文件log4j.xml以及MySql数据库驱动文件

    本篇文章将深入探讨这两个关键组件:日志配置文件`log4j.xml`和MySQL数据库驱动文件`mysql-connector-java-5.1.39-bin.jar`。 首先,我们来了解`log4j.xml`。Log4j是Apache组织提供的一款开源的日志记录框架,广泛...

    log4j.xml 配置文件

    log4j 的配置文件示例 log4j是很好用的日志,建议项目里面都用上.

    SSM整合中的Log4j日志的配置详情

    Log4j 是一个功能强大且广泛使用的日志记录工具,特别是在 SSM(Spring、Spring MVC、Mybatis)整合项目中,合理地配置 Log4j 对项目的日志记录和输出至关重要。本文将详细介绍 SSM 整合中的 Log4j 配置详情,帮助...

    log4j.xml配置实现.pdf

    Apache Log4j是Java领域广泛使用的日志框架,它允许自定义日志级别、格式和输出位置。在这个场景中,我们将讨论如何通过`log4j.xml`配置文件来实现日志的自动化配置。 首先,我们创建了一个名为`Log4...

    log4j.zip 项目日志

    解压“log4j.zip”后,我们通常会找到一个名为“log4j.properties”或“log4j.xml”的配置文件,这是Log4j的核心配置文件。例如,以下是一个简单的配置示例: ```properties # log4j.properties log4j.rootLogger=...

    log4j.xml文件的配置文.pdf

    ### 关于Log4j.xml配置文件的理解与应用 #### 一、引言 在Java开发领域,日志记录是至关重要的一个环节。它不仅能够帮助开发者更好地了解程序运行时的状态,还能在出现故障时快速定位问题所在。Log4j作为一款优秀...

    log4j中配置日志文件相对路径方法(PDF)

    除了使用`log4j.properties`文件外,还可以通过XML文件来配置日志文件的路径。与`properties`文件类似,XML文件也支持变量的使用。 ##### 示例配置 ```xml &lt;appender name="logfile" class="org.apache.log4j....

    log4j.CustomLogAppender 限制log4j文件保存天数

    每天生成一个log4j日志文件,如果只需要将最近一段时间内的日志文件保留,以前或更早的文件不用保留。例如只保留最近一周的日志,日志文件保留3天等等这些。。。通过这个jar包就可以实现。 log4j.properties文件在...

    [SSH+Maven+Bootstrap视频教程]_17. 添加 log4j.properties 配置文件.zip

    2. **配置日志级别**:在`log4j.properties`文件中,定义不同级别的日志,如`DEBUG`、`INFO`、`WARN`、`ERROR`和`FATAL`。例如: ``` log4j.rootLogger=DEBUG, Console, File ``` 3. **定义输出目的地**:你可以...

    log4j按功能保存日志

    - 在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中,你可以定义多个Appender,每个Appender对应一个特定的功能或模块。 - 使用`category`或`logger`标签指定Logger的名称,这通常与你的功能模块相...

    Log4j配置详解高清版

    Log4j支持XML格式和properties属性文件格式的配置文件。以properties属性文件为例,配置文件一般包括Logger、Appender和Layout三个部分的配置。对于Logger,可以通过设置根Logger来指定日志输出的最低级别和目的地。...

    log4j2的日志xml配置文件

    log4j2的配置文件

Global site tag (gtag.js) - Google Analytics