Log4j配置
所需文件:1、jar包 : commons-logging.jar 、log4j-1.2.8.jar 、taglibs-log.jar
2、配置文件:commons-logging.properties 、log4j.properties
3、标签文件:taglibs-log.tag
commons-logging.properties文件内容:
##set Log as Log4J
org.apache.commons.logging.Log
=
org.apache.commons.logging.impl.Log4JCategoryLog
## set Log as SimpleLog
#org.apache.commons.logging.Log
=
org.apache.commons.logging.impl.SimpleLog
log4j.properties文件内容:
#ConversionPattern参数的格式含义
#格式名 含义
#
%
c 输出日志信息所属的类的全名
#
%
d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:
%
d
{yyy-MM-dd HH:mm:ss }
,输出类似:
2002
-
10
-
18
-
22
:
10
:
28
#
%
f 输出日志信息所属的类的类名
#
%
l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
#
%
m 输出代码中指定的信息,如log(message)中的message
#
%
n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
#
%
p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
#
%
r 输出自应用启动到输出该日志信息所耗费的毫秒数
#
%
t 输出产生该日志事件的线程名
## LOGGERS ##
#define a logger named helloAppLogger
log4j.rootLogger
=
info,console,file
## APPENDERS ##
# define an appender named console, which is set to be a ConsoleAppender
log4j.appender.console
=
org.apache.log4j.ConsoleAppender
# define an appender named file, which is set to be a RollingFileAppender
log4j.appender.file
=
org.apache.log4j.RollingFileAppender
log4j.appender.file.File
=
dada.txt
## LAYOUTS ##
# assign a SimpleLayout to console appender
log4j.appender.console.layout
=
org.apache.log4j.SimpleLayout
# assign a PatternLayout to file appender
log4j.appender.file.layout
=
org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern
=%
d
{yyyy-MM-dd hh:mm:ss}
[
%
c]:
%
p
-%
c
-
%
m
%
n
新建log4j配置文件载入servlet类:
import
javax.servlet.
*
;
import javax.servlet.http. * ;
import java.io. * ;
import java.util. * ;
import org.apache.log4j.PropertyConfigurator;
public class Log4j extends HttpServlet {
private static final String CONTENT_TYPE = " text/html; charset=GBK " ;
// Initialize global variables
public void init() throws ServletException {
String prefix = this .getServletContext().getRealPath( " / " );
String file = this .getInitParameter( " log4j " );
System.out.println( " 载入log4j配置文件 " + prefix + file);
if (file != null ){
PropertyConfigurator.configure(prefix + file);
}
}
// Clean up resources
public void destroy() {
}
}
web.xml文件:
import javax.servlet.http. * ;
import java.io. * ;
import java.util. * ;
import org.apache.log4j.PropertyConfigurator;
public class Log4j extends HttpServlet {
private static final String CONTENT_TYPE = " text/html; charset=GBK " ;
// Initialize global variables
public void init() throws ServletException {
String prefix = this .getServletContext().getRealPath( " / " );
String file = this .getInitParameter( " log4j " );
System.out.println( " 载入log4j配置文件 " + prefix + file);
if (file != null ){
PropertyConfigurator.configure(prefix + file);
}
}
// Clean up resources
public void destroy() {
}
}
<
servlet
>
< servlet - name > log4j </ servlet - name >
< servlet - class > derek.log4j.Log4j </ servlet - class >
< init - param >
< param - name > log4j </ param - name >
< param - value > WEB - INF\classes\log4j.properties </ param - value >
</ init - param >
< load - on - startup > 1 </ load - on - startup >
</ servlet >
< servlet - mapping >
< servlet - name > log4j </ servlet - name >
< url - pattern >/ log4j </ url - pattern >
</ servlet - mapping >
测试代码:
< servlet - name > log4j </ servlet - name >
< servlet - class > derek.log4j.Log4j </ servlet - class >
< init - param >
< param - name > log4j </ param - name >
< param - value > WEB - INF\classes\log4j.properties </ param - value >
</ init - param >
< load - on - startup > 1 </ load - on - startup >
</ servlet >
< servlet - mapping >
< servlet - name > log4j </ servlet - name >
< url - pattern >/ log4j </ url - pattern >
</ servlet - mapping >
import
org.apache.log4j.Logger;
public class Log4jTest {
public Log4jTest() {
Logger log = Logger.getLogger( this .getClass().getName());
log.info( " log4jDemo " );
}
public static void main(String[] args) {
Log4jTest log4jtest = new Log4jTest();
}
}
public class Log4jTest {
public Log4jTest() {
Logger log = Logger.getLogger( this .getClass().getName());
log.info( " log4jDemo " );
}
public static void main(String[] args) {
Log4jTest log4jtest = new Log4jTest();
}
}
1271

被折叠的 条评论
为什么被折叠?



