Log4j简单应用
来源:互联网 发布:linux 搜索文件命令 编辑:程序博客网 时间:2024/06/05 22:46
Log4j主页:http://logging.apache.org/
Log4j是一款强大的日志记录工具,允许用户对日志记录作出灵活的定义。
测试程序:
package org.eleaf.log4j;
import java.io.IOException;
import java.util.Properties;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Log4jTest {
static Logger logger = Logger.getLogger(Log4jTest.class.getClass()); //定义日志记录器
/**
* @param args
*/
public static void main(String[] args) {
Properties property = new Properties();
try {
property.load(Log4jTest.class.getResourceAsStream("log4jtest.properties")); //获取属性文件
} catch (IOException e) {
}
PropertyConfigurator.configure(property);
logger.info("Begin Log4jTest");
for (int i = 0; i < 10; i++)
{
try
{
int j = random(); //返回一个0-9的随机数。
logger.warn(i + "/" + j + "=" + (i/j)); //如果分母为0,抛出异常,记录error;否则记录warn.
} catch (Exception e) {
logger.error("error:" + e.getMessage());
}
}
logger.info("End Log4jTest");
}
private static int random() //返回一个0-9的随机数。
{
return (int)(Math.random()*10);
}
}
log4jtest.properties属性文件:(应与Log4jTest.class在同一目录中)
##info指明日志级别,stdout,file是两个不同的输出目的地。
log4j.rootLogger=info, stdout, file
##输出目的地stdout,即标准输出。
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=[run:%r][date:%d{yyyy-MM-dd HH:mm:ss}][catalog:%c][priority:%p][message:%m][location:%l][thread:%t]%n
##输出目的地file,输出到文件log4jtest.log。
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=log4jtest.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[run:%r][date:%d{yyyy-MM-dd HH:mm:ss}][catalog:%c][priority:%p][message:%m][location:%l][thread:%t]%n
控制台标准输出结果:
[run:0][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:INFO][message:Begin Log4jTest][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:22)][thread:main]
[run:31][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:0/8=0][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:31][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:1/1=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:2/8=0][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:ERROR][message:error:/ by zero][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:30)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:4/4=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:ERROR][message:error:/ by zero][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:30)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:6/9=0][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:7/4=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:8/1=8][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:9/9=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:INFO][message:End Log4jTest][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:33)][thread:main]
日志文件输出结果:
[run:0][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:INFO][message:Begin Log4jTest][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:22)][thread:main]
[run:31][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:0/8=0][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:31][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:1/1=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:2/8=0][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:ERROR][message:error:/ by zero][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:30)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:4/4=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:ERROR][message:error:/ by zero][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:30)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:6/9=0][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:7/4=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:8/1=8][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:WARN][message:9/9=1][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:28)][thread:main]
[run:47][date:2005-10-18 17:16:58][catalog:java.lang.Class][priority:INFO][message:End Log4jTest][location:org.eleaf.log4j.Log4jTest.main(Log4jTest.java:33)][thread:main]
- Log4j简单应用
- log4j的简单应用
- log4j简单应用
- 【完善】Log4J的简单应用
- log4J 最简单的应用
- JAVA中日志-log4j简单应用
- Log 基础 二 ------ log4j 简单应用
- Log4j应用
- log4j应用
- log4j的应用范畴
- Log4j的基本应用
- log4j的具体应用
- log4j 具体应用(续)
- Log4j的基本应用
- Log4j初级应用篇
- log4j的应用
- 关于log4j的应用
- log4j.properties的应用
- 装完系统还要装编译器(偶的一次gcc安装经历)
- 效率jiu是高
- j2me学习心得
- J2ME(CLDC/MIDP) FAQ
- 最爱看的电视剧《创世纪I II III》
- Log4j简单应用
- [转]Siege:压力模拟/测试工具
- eXtremeTable导出数据为XLS和PDF时的中文问题解决办法
- 爱情名言
- 抓不住的按钮实现
- begin with the end in mind
- OFSA中增加Leaf的脚本
- 隔夜茶的作用
- 西红柿-生吃还是熟吃