码迷,mamicode.com
首页 > 其他好文 > 详细

日志及log4j框架

时间:2018-11-08 23:17:02      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:产生   code   1.3   his   EAP   span   位置   需要   pen   

日志分类

  SQL日志、异常日志、业务日志


日志实现

1、jdk也提供日志记录功能

  没有日志级别;
  如果想写出到文件,需要自己使用IO流来实现

2、log4j是一个非常优秀的开源日志记录工具

  a、控制日志的输出级别
  b、控制日志信息输送的目的地是控制台、文件等
  c、控制每一条日志的输出格式

3、slf4j

  slf4j 依赖 jdk日志实现、log4j日志框架,可以在这两者之间切换调用

  hibernate默认的日志框架是slf4j、log4j

4、logback

  logback效率更高,是log4j作者的新产品

  logback也可以在jdk和log4j之间切换调用


log4j的使用

1、添加 log4j 的jar包

  a、log4j-1.2.16.jar
  b、commons-logging-1.1.3.jar

2、创建log4j.properties文件并配置

3、代码实现

   private Logger log = Logger.getLogger(this.getClass());

   log.info("方法开始...");


配置实例

# 设置日志级别和输出目的地
# 日志级别 fatal>error>warn>info>debug,开发时一般设置为debug最低级别,生产上可设置为info或warn级别
# 输出目的地的名称自定义,这里定义了stdout和logfile;其中stdout代表输出到控制台
log4j.rootLogger=debug,stdout,logfile
# 把日志信息输出到控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
# 打印出来是红色字体
log4j.appender.stdout.Target=System.err
# 输出简单格式
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
# 把日志信息输出到文件
log4j.appender.logfile=org.apache.log4j.FileAppender
# 指定文件名
log4j.appender.logfile.File=zr.log
# 这里没有使用 simpleLayout,而是使用 PatternLayout
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
# 使用 PatternLayout 还要为其指定格式
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%l%F%p%m%n

输出格式配置

%p:输出日志级别,即debug、info、warn、error、fatal
%d:输出日志发生时间
%r:输出从应用启动到输出该log信息耗费的毫秒数
%l:输出日志发生位置,相当于%C.%M(%F:%L)的组合,包括类名、发生的线程、产生日志的文件、代码中的行数
如:TestLog4j.main(TestLog4j.java:10)
    TestLog4j         ------ 类名
    main           ------ 发生的线程
    TestLog4j.java      ------ 由哪个文件产生的日志
    10         ------ 代码中的行数
%F:输出产生日志文件,%l已经包含了%F
%L:输出代码中的行数,%l已经包含了%L
%m:输出日志内容
%n:输出换行符,windows为"\r\n",unix为"\n"

 

日志及log4j框架

标签:产生   code   1.3   his   EAP   span   位置   需要   pen   

原文地址:https://www.cnblogs.com/Mike_Chang/p/9932410.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!