`

log4j基础

阅读更多

http://logging.apache.org/
1 导入log4j的jar包

2 在scr下创建log4j.properties
  log4j.properties
  //输入级别debug<info<warn<error
  log4j.rootLogger=debug[info][warn][error],appender1
  //ConsoleAppender输出到控制台,FileAppender输出到文件
  log4j.appender.appender1=org.apache.log4j.ConsoleAppender[FileAppender]
  //写出的目标文件
  log4j.appender.appender1.File=c:/demllog4j.log[.html]
  //写入文件的格式
  log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout[HTMLLayout]
 
  例1,控制台输出:
  log4j.rootLogger=debug,appender1
  log4j.appender.appender1=org.apache.log4j.ConsoleAppender
  log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout
  例2,输出到.log文件:
  log4j.rootLogger=debug,appender1
  log4j.appender.appender1=org.apache.log4j.FileAppender
  log4j.appender.appender1.File=c:/demllog4j.log
  log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout
  例3,输出到.html文件:
  log4j.appender.appender1=org.apache.log4j.FileAppender
  log4j.appender.appender1.File=c:/demllog4j.html
  log4j.appender.appender1.layout=org.apache.log4j.HTMLLayout
  例4,输出到.html文件同时输出到控制台:
  log4j.rootLogger=error,appender1,appender2
  log4j.appender.appender1=org.apache.log4j.ConsoleAppender
  log4j.appender.appender2=org.apache.log4j.FileAppender
  log4j.appender.appender2.File=c:/demllog4j.html
  log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout
  log4j.appender.appender2.layout=org.apache.log4j.HTMLLayout
  例5,为不同类定义输出格式
  log4j.rootLogger=debug,appender1
  #log4j.logger.com.liuwei=info,appender1
  log4j.appender.appender1=org.apache.log4j.ConsoleAppender
  log4j.appender.appender1.layout=org.apache.log4j.PatternLayout
  log4j.appender.appender1.layout.ConversionPattern=%r [%t] %p - %c - %l - %m%n

3 编写代码

public class Test {
 //参数为当前类的类名,得到logger
 private static Logger logger=Logger.getLogger(Test.class);
 
 public static void main(String[] args) {
                //输出信息
  //if(log.isDebugEnabled()){
       logger.debug("sssssssss");
       logger.info("ssssssss");
       logger.error("ssssssssss");
  //}
 }
}
--------------------------------------------------------------------
log4j核心
 
1 Logger 完成日志信息的处理

  输出级别:
    debug 错误信息     if(log.isDebugEnabled()){log.debug("x="+x);}
    info 日常信息      if(log.isDebugEnabled()){log.info("System started at"+new Date());}
    warn 警告信息      if(log.isDebugEnabled()){log.warn("Server down-returnning");}
    error 程序出错信息 if(log.isDebugEnabled()){log.error("Could not access server",e);}
 
2 Appender 设置日志信息的去向

  org.apache.log4j.ConsoleAppender(控制台)
  org.apache.log4j.FileAppender(文件)
  org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
  org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸时产生一个新的文件)
  org.apache.log4j.WriterAppender(将日志讯息以串流格式发送到任意指定的地方)
  org.apache.log4j.JdbcAppender(将日志讯息保存到数据库中)

3 Layout 设置日志信息的输出样式

  org.apache.log4j.HTMLLayout (以HTML表格形式布局)
  org.apache.log4j.SimpleLayout (包含日志讯息的级别和讯息字符串)
  org.apache.log4j.TTCCLayout (包含日志产生的时间、执行者、类别等等讯息)
  org.apache.log4j.PatternLayout (可以灵活地指定布局模式)
 
  PatternLayout:
     -%p 输出优先级,即debug,info,warn,error
     -%r 输出自应用启到到输出该日志讯息所耗费的毫秒数
     -%t 输出产生该日志事件的线程名
     -%f 输出日志讯息所属的类的类别名
     -%c 输出日志讯息所属的类的全名
     -%d 输出日志时间点的日期或时间,指定格式的方式:%d{yyyy-MM-dd HH:mm:ss}
     -%l 输出日志讯息所属发生位置,即输出日志讯息的语句处于它所在的类别的第几行
     -%m 输出代码中指定的讯息,如log(message)中的message
     -%n 输出一个换行符号

配置文件
  log4j.properties/log4j.xml

分享到:
评论

相关推荐

    Log4J基础详解及示例大全

    Log4J理论及各种输出方式说明。Log4j主要由三大组件说明。Log4j的控制台输出方式、邮件输出方式、数据库输出方式、文件输出方式。

    log4j的基础知识

    在强调可重用组件开发的今天,除了自己从头到尾开发一个可重用的日志操作类外,Apache为我们提供了一个强有力的日志操作包-Log4j。  官方站点:http://logging.apache.org/log4j/  此外,通过Log4j其他语言接口...

    log4j基础使用手册

    log4j入门手册及参考配置,适用于初学者。

    log4j基础学习

    NULL 博文链接:https://bepatient.iteye.com/blog/901369

    log4j中文版的API

    对log4j讲的很详细,聪基础到比较高级的部分都讲到了,只要把这个搞懂了,log4j的使用基本就没数码问题了

    log4j.properties

    IDEA版整合ssm(Spring+SpringMVC+Mybatis)框架,学生增删改查基础项目。附带源码的log4j

    log5j工具包

    log5j在log4j的基础上提供了几个改进,应该说是简单和实用的封装。有趣的是log5j主页对自己名字的解释,因为要感谢JDK 1.5,所以才叫了这个名字。

    idea 14 ssm 全注解框架+log4j+事物控制+mybatis基础Dao配置

    idea 14 ssm 全注解框架+log4j+事物控制+mybatis基础Dao配置

    log4j-demos:log4j和log4j2的演示

    项目结构log4j (log4j 常见配置文件配置)log4j2 (log4j2 常见配置文件配置)demos (常见demos,详情如下)log4j & demosDemo1 log4j 基础Demo2 log4j-servletDemo3 log4j-springlog4j2 & demosDemo1 log4j2 基础Demo2 ...

    aliyun-log-log4j-appender:aliyun-log-log4j-appender

    Apache log4j是一个Apache软件基础项目。 您可以通过Log4j控制日志的目的地。 它可以是控制台,文件,GUI组件,套接字,NT事件日志,系统日志。 您也可以控制每个日志的输出格​​式。 您可以通过日志级别控制日志...

    log4j从入门到精通(附jar文件)

    只要会Java基础,就能看明白这篇文章,从基础开始,直到高级使用。 都是从网上各处查找的,并将网上的资料的整理,筛选,排版,非常适合刚接触log4j与想详细弄明白log4j的人。

    log4j-1.2.15.jar+shiro-all-1.3.2.jar+slf4j-api-1.6.1.jar+slf4j-log4j12-1.6.1.jar

    shiro项目需要的基础包 log4j-1.2.15.jar+shiro-all-1.3.2.jar+slf4j-api-1.6.1.jar+slf4j-log4j12-1.6.1.jar

    日志组件log5j-1.2.jar包

    日志组件log5j,在log4j的基础上进行了封装和改进,使用更加方便高效。

    log 4j resource

    这是自己从网上找的一些log4j的资料,其中包括有《log 4j manaul〉,《log4j初步入门〉等一些基础资料,希望对大家又帮助。

    log4j学习入门

    log4j入门教程,朋友编写的,看了基本就会使用log4j了

    log4j日志写入mongodb

    java工程,可以直接导入到Eclipse并执行看到结果,经过调试和测试。其中包含一个操作mongoDB的工具类和Test类,方法均进过了测试。可考虑在此基础添加消息队列等其他手段提升mongoDB的写入能力

    使用高效的日志工具—Log4J

    大家在编程时经常不可避免地要使用到一些日志操作,比如开发阶段的调试信息、运行...调查显示,日志代码占代码总量的4%。通常大家可以简单地使用System.out.println()语句输出日志信息,但是往往会有一些判断,比如:

    struts2,(slf4j-log4j12-1.5.8—日志) 建议360压缩解压

    struts2的基础jar包,以及日志管理需要的包

    Log4j 日志文件Linux/Mac/Windows通用存放位置设置方法

    log4j1/log4j2中category的配置以及log的输出位置(windows和linux通用的log输出位置) 一、场景和需求 假设我现在有3个独立的用project(暂时用maven关联起来,当然也可以不用maven),一个是提供公共服务的...

    log6j:基于log5j的现代Java日志记录库

    Log6j在Log5j的基础上具有以下附加功能: Logback支持:Log5j默认情况下使用Log4j,但是现在无法仅使用Log4j来使用某些库(并且不可以,使用SLF4J也不理想)。 细节对象:Log6j支持在日志语句中添加可选的,任意的...

Global site tag (gtag.js) - Google Analytics