Log4j 的配置

java日志我这里分为两种:web应用和桌面应用。而我这里重点介绍web应用中log4j的使用。



一、配置log4j.properties文件,该文件存放于classpath根目录下。

代码如下:

log4j.rootLogger=INFO, stdout, logfile

# CONSOLE appender
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{HH:mm:ss} %-5p %m%n

# Log File appender
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
log4j.appender.logfile.file=${webapp.root}/WEB-INF/tiens.log
log4j.appender.logfile.append=true

log4j.logger.com.tiens=INFO



其中log4j.rootLogger=INFO, stdout, logfile 是要配置日志级别以及日志输出对应名称



二、注册log4j的配置属性。

新建一servlet,在servlet中注册日志的配置属性,代码如下:

public void init(ServletConfig config) throws ServletException {
super.init();
String prefix = config.getServletContext().getRealPath("/");
String file = config.getInitParameter("log4j");
String filePath = prefix + file;
Properties props = new Properties();

try {
FileInputStream istream = new FileInputStream(filePath);
props.load(istream);
istream.close();

String logFile = prefix
+ props.getProperty("log4j.appender.logfile.File");// 设置路径,对应配置文件中的名称
props.setProperty("log4j.appender.logfile.File", logFile);

// 装入log4j配置信息
PropertyConfigurator.configure(props);
} catch (IOException e) {
System.out.println("Could not read configuration file [" + filePath
+ "].");
System.out.println("Ignoring configuration file [" + filePath
+ "].");
return;
}

}



三、在web.xml中设置启动

代码如下

<servlet>
<description></description>
<display-name>InitLog4J</display-name>
<servlet-name>InitLog4J</servlet-name>
<servlet-class>com.tiens.web.InitLog4J</servlet-class>
<init-param>
<param-name>log4j</param-name>
<param-value>WEB-INF/classes/log4j.properties</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>InitLog4J</servlet-name>
<url-pattern>/InitLog4J</url-pattern>
</servlet-mapping>

到此,一个基本的常用的web使用log4j的例子已经完成。





Log4j的一些常用高级配置:

Log4j提供的appender有以下几种:

org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生新文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值