Chinaunix首页 | 论坛 | 博客
  • 博客访问: 628046
  • 博文数量: 149
  • 博客积分: 3901
  • 博客等级: 中校
  • 技术积分: 1558
  • 用 户 组: 普通用户
  • 注册时间: 2009-02-16 14:33
文章分类

全部博文(149)

文章存档

2014年(2)

2013年(10)

2012年(32)

2011年(21)

2010年(84)

分类: LINUX

2013-02-19 19:28:14



线程调试,日志输出 的利器 – log4j  ,大家过一眼。

 

Log4j 开始使用

1.       工程模块映入 log4j jar

2.       classpath 根目录下 添加 log4j.properties

3.       需要落日志的类中在 class 域写入

private static Logger logger = Logger.getLogger(SayHello.class));

4.       根据当前运行状态选择 日志输出

修改办法 log4j.properties  >  log4j.rootLogger

 

 

日志输出模式详细说明

a)       默认:log4j.rootLogger=INFO ,stdout 

输出: 控制台

格式 :

类目名.方法名$线程名词(源文件:行数):运行当前时间 (换行)

日志内容输出  (换行)

(换行)

 

 

b)       测试:  log4j.rootLogger=INFO ,test

输出 运行当前目录 test.log

格式:   

   类目名.方法名$线程名词(源文件:行数):运行当前时间 - 日志内容输出(换行)

 

c)       运行.简单 : log4j.rootLogger=INFO ,run_simple

输出 run_simple.log #当前运行 ,跨天会切分 run_simple.log.yyyyMMdd

格式 :运行当前时间 - 日志内容输出(换行)

 

d)        运行 :  log4j.rootLogger=INFO ,run

输出 run.log #当前运行 ,跨天会切分 run.log.yyyyMMdd

      格式 :类目名:运行当前时间 - 日志内容输出(换行)

 

F)  运行详细 : log4j.rootLogger=INFO , run_detailed

输出 run_detailed.log   #当前运行 ,跨天会切分 run_detailed.log.yyyyMMdd

格式 类目名.方法名$线程名词(源文件:行数):运行当前时间 - 日志内容输出(换行)

 

 

落日志代码参考

 

logger.info("Entering application.");

        

         Thread cc = new Thread(new Runnable(){

 

         @Override

         public void run() {

            try {

                int ii = 0;

                int jj = 1 ;

                int cc = jj/ii;

            } catch (Exception e) {

                logger.error(e);

            }

         }

         });

        

         //cc.setName("google");

         cc.start();

        

}

 

控制台输出

demo.SayHello.main$main(SayHello.java:15):2013-02-19 19:23:58,185

Entering application.

 

demo.SayHello$1.run$Thread-0(SayHello.java:26):2013-02-19 19:23:58,188

java.lang.ArithmeticException: / by zero



配置文件详细 :
#http://wwwz.iteye.com/blog/249039

# DEBUG \INFO \ WARN \ ERROR \ FATAL
# stdout,test,  run_simple,run,run_detailed 
log4j.rootLogger=INFO ,stdout,test,  run_simple,run,run_detailed

# stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%C.%M$%t(%F:%L) - %m%n

# test 
log4j.appender.test=org.apache.log4j.RollingFileAppender
log4j.appender.test.layout=org.apache.log4j.PatternLayout
log4j.appender.test.layout.ConversionPattern=%C.%M$%t(%F:%L):%d{yyyy-MM-dd HH:mm:ss,SSS} - %m%n
log4j.appender.test.File=test.log
log4j.appender.logfile.test=1GB

# run_simple
log4j.appender.run_simple=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.run_simple.File=run_simple.log
log4j.appender.run_simple.DatePattern='.'yyyyMMdd
log4j.appender.run_simple.layout=org.apache.log4j.PatternLayout
log4j.appender.run_simple.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} - %m%n


# run
log4j.appender.run=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.run.File=run.log
log4j.appender.run.DatePattern='.'yyyyMMdd
log4j.appender.run.layout=org.apache.log4j.PatternLayout
log4j.appender.run.layout.ConversionPattern=%C:%d{yyyy-MM-dd HH:mm:ss,SSS} - %m%n

# run_detailed
log4j.appender.run_detailed=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.run_detailed.File=run_detailed.log
log4j.appender.run_detailed.DatePattern='.'yyyyMMddHH
log4j.appender.run_detailed.layout=org.apache.log4j.PatternLayout
log4j.appender.run_detailed.layout.ConversionPattern=%C.%M$%t(%F:%L):%d{yyyy-MM-dd HH:mm:ss,SSS} - %m%n

阅读(3364) | 评论(0) | 转发(0) |
0

上一篇:hadoop fair scheduler调度器

下一篇:ext4 使用

给主人留下些什么吧!~~