`

目前用的log4j.properties

阅读更多
此配置把全部日志写到一个文件,然后把error日志抽出来再单独写一个文件
这样查找日志方便点。。。

### set log levels ###
log4j.rootLogger = info, stdout, D, E


### 输出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c:%L - %m%n


### 输出到日志文件 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${WORKDIR}/logs/log.log
log4j.appender.D.Append = true
## 输出DEBUG级别以上的日志
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%t:%r] - %c:%L - [%p] %m%n


### 保存异常信息到单独文件 ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
## 异常日志文件名
log4j.appender.E.File = ${WORKDIR}/logs/error.log
log4j.appender.E.Append = true
## 只输出ERROR级别以上的日志!!!
log4j.appender.E.Threshold = ERROR 
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern =%-d{yyyy-MM-dd HH\:mm\:ss} [%t\:%r] - %c:%L - [%p] %m%n


${WORKDIR} 在容器启动的时候添加:
/**
 * WebContainerListener.java
 * 
 * Created Date:	2010/07/12		
 * Last Update:		2010/07/12	    
 * 
 * Copyright (c) Wunderman. All Rights Reserved.
 */
package com.cal.interceptor;

import java.io.File;
import java.io.IOException;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

/**
 * @version 1.00
 * 
 * <b>修改历史:</b><br>
 * @history 		2010/07/12: 初版 		
 * @author			mahongmin      				
 * @peer review									
 * 
 *
 */
public class WebContainerListener implements ServletContextListener{

	/**
	 * 容器生命周期结束
	 */
	public void contextDestroyed(ServletContextEvent sce) {
		
	}

	/**
	 * 容器初始化
	 */
	public void contextInitialized(ServletContextEvent sce) {
		createLogFile(sce);
	}
	
	/**
	 * 如果没有日志文件,则创建
	 * @param sce
	 */
	private void createLogFile(ServletContextEvent sce){
		String root = sce.getServletContext().getRealPath("");
		String separator = File.separator ;
		//全部日志
        String logName = "log.log" ;
        //仅错误日志
        String logEName = "error.log" ;
        String directoryLog  = root + separator + "logs";
        String directoryELog  = root + separator  + "logs";
        File fLog = new File(directoryLog , logName) ;
        File fELog = new File(directoryELog , logEName) ;
        if(!fLog.exists()) {
        	fLog.getParentFile().mkdirs() ;
            try {
				fLog.createNewFile() ;
			} catch (IOException e) {
				e.printStackTrace();
			}
        }
        if(!fELog.exists()) {
        	fELog.getParentFile().mkdirs() ;
            try {
            	fELog.createNewFile() ;
			} catch (IOException e) {
				e.printStackTrace();
			}
        }
        System.setProperty("WORKDIR", root);
	}
}
分享到:
评论

相关推荐

    spring 配置log4j.docx

    5. **log4j配置文件**:在`log4j.properties`文件中,我们可以定义日志级别(如INFO、DEBUG等)、日志输出的目标(如控制台、文件等)以及输出格式。例如,`log4j.rootCategory=INFO, file`设置了日志级别为INFO,并...

    log4j从入门到详解

    目前,Log4j有两个主要版本:Log4j 1.x 和 Log4j 2.x。对于新手来说,建议从Log4j 2.x开始学习,因为它提供了更多高级特性并且修复了许多旧版本的问题。 官方网站地址:...

    log4j 介绍

    不过,需要注意的是,目前Log4j 1.x版本的开发者已经明确表示,logj4.properties文件将来只会在Log4j内部使用,因此建议开发者不要再使用该文件,以避免在升级时遇到不必要的麻烦。 在log4j.xml文件中,定义了一些...

    1.log4j详解

    ### Log4j详解 #### 输出级别的种类 在Log4j中,日志记录的信息可以根据不同的级别进行筛选。这些级别从高到低分别为:`FATAL`、`ERROR`、`WARN`、`INFO`、`DEBUG`。这些级别的定义如下: - **FATAL**:致命错误...

    java日志操作之Log4j

    Log4j通常通过一个配置文件(通常是`log4j.properties`或`log4j.xml`)来管理各种设置,这些配置决定了日志的行为方式,例如: - **指定Logger的级别**:如设置根Logger的默认级别为INFO。 - **配置Appender的类型和...

    JAVA应用开发日志解决方案

    目前,市场上流行的日志解决方案主要有Log4j、Log4j+JCL以及Log4j+SLF4J等。本文将详细介绍这些日志框架的配置与使用方法。 #### 1.1 下载所需组件 为了进行日志框架的学习与实践,首先需要准备以下组件: 1. **...

    Mybatis课件(基于传智修改)

    3. **添加相关配置文件**:通常需要添加`log4j.properties`和`jdbc.properties`两个配置文件,用于配置日志和数据库连接信息。 - **`jdbc.properties`**: ```properties jdbc.driver=com.mysql.jdbc.Driver ...

    log4j, fast and flexible java logging-开源

    目前,社区推荐使用更安全的Log4j 2.x版本。 总结来说,Log4j作为一款强大的日志工具,为Java开发者提供了高效、灵活的日志管理手段,极大地便利了开发过程中的调试和问题排查。通过合理的配置和使用,可以显著提升...

    Logback 实例,log4,slf4,logback日志输出 demo

    配置文件(通常为`logback.xml`或`log4j.properties`)决定了日志的级别(如ERROR、WARN、INFO、DEBUG、TRACE),输出目的地(控制台、文件、网络等),以及日志格式。 例如,在Logback中,你可以设置如下配置: - ...

    Apache Commons-logging使用实例

    所以目前比较流行的是 Commons-logging 和 Log4j 结合使用。 * 部署日志器:下载 commons-logging.jar 和 log4j.jar 包,能后把它们放到工程的 lib 目录下,引入工程中。 * 指定日志器:在属性文件 common-logging....

    智能开发平台 DOROODO

    log4j.appender.appender3.URL=jdbc:mysql://127.0.0.1:3306/doroodo?characterEncoding=UTF-8 ----&gt;日志数据库链接 log4j.appender.appender3.user=root ----&gt;日志数据库用户名 log4j.appender.appender3.password=...

    涵盖SpringBoot的AOP、Slf4j日志门面-springboot-in-action.zip

    至于如何在代码中使用Slf4j,我们可以创建一个静态logger变量,例如`private static final Logger log = LoggerFactory.getLogger(MyClass.class);`,然后在需要记录日志的地方调用`log.info()`、`log.debug()`等...

    ibatis学习笔记

    日志文件log4j.properties** 示例: ```properties log4j.rootLogger=INFO, console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.Target=System.out log4j.appender....

    SpringBoot2.0整合Druid连接池详细步骤.docx

    app.datasource.cbssxin.druid.filters=stat,wall,log4j app.datasource.cbssxin.druid.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 ``` 配置 Druid 管理后台 在 SpringBoot ...

    JAVA-OCR图文识别解决方案.docx

    System.setProperty("aip.log4j.conf", "path/to/your/log4j.properties"); ``` 最后,通过调用`basicGeneral`方法来识别图片中的文字: ```java JSONObject res = client.basicGeneral(path, new HashMap, String&gt;...

    Java 使用SMSLib通过串口通讯收发短信

    2. SLF4J日志框架,提供类似log4j的日志记录功能,可以在http://www.slf4j.org/获取。 3. Java串口通信库,对于Windows系统通常是comm.jar,其他非Windows系统可以使用RXTXcomm.jar和相应的库文件(如Linux下的...

    LOG660

    2. `src/main/resources`: 可能包含了日志配置文件,如log4j.properties或logback.xml。 3. `pom.xml` 或 `build.gradle`: 项目的构建文件,描述了项目依赖和构建过程,可能指定了日志库版本。 4. `README.md`: 项目...

    ApacheHive安装详解及相关问题解决方案.docx

    - 同样地,复制并编辑 `hive-log4j.properties` 文件,将 `EventCounter` 设置为 `org.apache.hadoop.log.metrics.EventCounter`,以确保日志记录的正确性。 ##### 2.4 整合 MySQL 由于 Hive 默认使用的 Derby ...

    SpringBoot初始教程之日志处理

    SpringBoot默认集成了各种日志框架,如Logback、Log4j2等。在application.properties中,你可以通过以下方式配置日志级别: ``` logging.level.root=WARN logging.level.org.springframework.web=DEBUG ``` 这将设置...

    基于springboot的学生课程查询系统源码.zip

    9. **Other Resources**:其他资源文件,如静态资源(CSS、JS、图片)、国际化文件(i18n)、日志配置(log4j.properties)等。 学习这个源码,可以帮助初学者理解SpringBoot如何整合各种服务,如何处理HTTP请求,...

Global site tag (gtag.js) - Google Analytics