1、编写log4j配置文件(如log.config):
# Set root category priority to INFO and its only appender to CONSOLE.
#log4j.rootCategory=INFO, FILE
log4j.rootCategory=INFO, CONSOLE, LOGFILE
# Set the enterprise logger category to FATAL and its only appender to CONSOLE.
log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE
# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=INFO
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=- %m%n
# LOGFILE is set to be a File appender using a PatternLayout.
#WORKDIR setted by system.setProperty!
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=${WORKDIR}/log/adapter.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.Threshold=INFO
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
2、使用LogServlet初始化log4j的配置参数:
package com.cait.adapter.servlet;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class LogServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -1837292475877367091L;
static Logger logger = Logger.getLogger(LogServlet.class);
public LogServlet() {
}
public void init(ServletConfig sc) throws ServletException {
String prefix = "";
if (sc != null) {
prefix = sc.getServletContext().getRealPath("/");
} else {
prefix = "D:/Project_java/Any3Adapter/web";
}
String file = sc.getInitParameter("logConfigFile");
if (System.getProperty("WORKDIR") == null) {
System.setProperty("WORKDIR", prefix);
}
Properties props = new Properties();
try {
FileInputStream istream = new FileInputStream(prefix + file);
props.load(istream);
istream.close();
String logFile = prefix + props.getProperty("log4j.appender.file.File");// 设置路径
props.setProperty("log4j.appender.file.File", logFile);
PropertyConfigurator.configure(props);
}
catch (IOException e) {
System.out.println("Could not read configuration file [" + file + "].");
System.out.println("Ignoring configuration file [" + file + "].");
return;
}
}
}
3、设置web.xml的servlet选项,保证配置被加载
<servlet>
<servlet-name>LogServlet</servlet-name>
<servlet-class>com.cait.adapter.servlet.LogServlet</servlet-class>
<init-param>
<param-name>logConfigFile</param-name>
<param-value>WEB-INF/config/log.config</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
4、测试用例:
....
Logger log=Logger.getLogger(this.getClass());
log.info("LogServlet Test: testOK");
分享到:
相关推荐
log4j详细说明 Log4j API帮助文档.chm log4j-1.2.17.jar。最详细的log4 配置说明以及详细操作说明文档,帮助文档。
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式...
log4j概况介绍 log4j的架构概览 log4j的配置 log4j应用实例
包括log4j 1.2版本的jar包和javaeye上关于其详细的配置和使用说明实例
Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的...log4j配置样本 实例代码: log4j.rootLogger=INFO,CATALINA log4j.logger.com.dan
一、定义配置文件 二、在代码中使用Log4j 三、企业应用实例
Log4j2 Appender将Java应用程序与Dynatrace通用日志提取功能集成在一起。 为了使其正常工作,您必须提供两个参数: activeGateUrl启用了通用日志提取模块的ActiveGate实例的URL token -启用了日志导入权限的有效...
19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 587 第20章 filter在web开发中的应用 588 20.1 过滤器概述 588 20.2 filter api 589 20.2.1 filter接口 589 20.2.2 filterconfig接口 590 20.2.3 ...
19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 587 第20章 filter在web开发中的应用 588 20.1 过滤器概述 588 20.2 filter api 589 20.2.1 filter接口 589 20.2.2 filterconfig接口 590 20.2.3 ...
19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 587 第20章 filter在web开发中的应用 588 20.1 过滤器概述 588 20.2 filter api 589 20.2.1 filter接口 589 20.2.2 filterconfig接口 590 20.2.3 ...
19.3 log4j使用实例 572 19.4 ndc和mdc 585 19.5 小结 587 第20章 filter在web开发中的应用 588 20.1 过滤器概述 588 20.2 filter api 589 20.2.1 filter接口 589 20.2.2 filterconfig接口 590 20.2.3 ...
6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant介绍 7.1.1 Ant简介 ...
6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant介绍 7.1.1 Ant简介 ...
│ ch07.rar Log4J使用演示(实例演示) │ ch08.rar 用Ant管理Web应用(实例演示) │ ch09.rar 类加载器(实例演示) │ ch12.rar FORM验证登录文件,BASIC验证配置文件,Realm配置代码 │ ch13.rar ...
1.包含以下项目所需要的架包,junit-4.7 log4j-1.2.16 mybatis-3.2.2-sources mybatis-3.3.0 mysql-connector-java-5.1.0-bin mysql-connector-java-8.0.26 2.使用了Dao.mapper接口方式开发和xml方式开发查询数据库 ...
[log4j_jar]log4j的支持包 [myAutoLoginWeb]过滤器Filter学习-实现用户的自动登录与IP黑名单过滤 [myBookStore]单机版的书店管理系统 [myDbPoolUse]C3P0连接池配置/DBCP连接池配置/Apache的DBUtils框架使用 ...
[log4j_jar]log4j的支持包 [myAutoLoginWeb]过滤器Filter学习-实现用户的自动登录与IP黑名单过滤 [myBookStore]单机版的书店管理系统 [myDbPoolUse]C3P0连接池配置/DBCP连接池配置/Apache的DBUtils框架使用 ...
6.2.2 配置Log4j 6.3 Log4j的使用方法 6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant...
6.3.1 配置Log4j 6.3.2 配置根Logger 6.3.3 指定日志输出位置 6.3.4 指定日志输出格式 6.3.5 指定日志输出优先级 6.3.6 在代码中使用Log4j 6.4 改进Log4j 6.5 小结 第七章 Ant使用指南 7.1 Ant介绍 7.1.1 Ant简介 ...
logging模块与log4j的机制是一样的,只是具体的实现细节不同。模块提供logger,handler,filter,formatter。 logger:提供日志接口,供应用代码使用。logger最长用的操作有两类:配置和发送日志消息。可以通过...