log4j初始

本文介绍了Log4j的三大核心组件:Logger、Appender及Layout的功能与配置方法,并通过实例展示了如何设置日志级别、输出目标及格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      Log4j有三个主要的组件:Loggers,Appenders(append,路径)和Layouts,这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松的记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置.

1、 Loggers
      Loggers 组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,这里Log4j有一个规则:假设Loggers级别为P,如果在Loggers中发生了一个级别Q比P高,则可以启动,否则屏蔽掉。
       语法表示:
     Logger.debug(Object message);
     Logger.info(Object message);
     Logger.warn(Object message);
     Logger.error(Object message);

2、 Appenders
     其语法表示为:
     org.apache.log4j.ConsoleAppender(控制台),
     org.apache.log4j.FileAppender(文件),
     org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
     org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

3、 Layouts
      用户根据自己的喜好格式化自己的日志输出。Log4j可以在Appenders的后面附加Layouts来完成这个功能。Layouts提供了四种日志输出样式,如根据HTML样式、自由指定样式、包含日志级别与信息的样式和包含日志时间、线程、类别等信息的样式等等。 其语法表示为:
      org.apache.log4j.HTMLLayout(以HTML表格形式布局),
      org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
      org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
      org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

下面给出一个具体配置例子,在程序中可以参照执行:
    log4j.rootLogger=INFO,A1
    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    log4j.appender.A1.layout.ConversionPattern=
                                        %-4r %-5p %d{yyyy-MM-dd HH:mm:ssS} %c %m%n
    这里需要说明的就是日志信息格式中几个符号所代表的含义:
    -X号: X信息输出时左对齐;
    %p: 日志信息级别
    %d{}: 日志信息产生时间
    %c: 日志信息所在地(类名)
    %m: 产生的日志具体信息
    %n: 输出日志信息换行
    在实际的项目开发中,很可能遇到所引用的包用Log4j来记录日志,比如Hibernate。那么在这里你可以很容易的控制这个包如何记录日志。比如在上面的配置文件中加一行:log4j.logger.org.hibernate=fatal
 
  部署  
   把 log4j 的包和 commons-logging 的包(加在一起才两个)放到 classpath 下面。然后把配置文件保存为 log4j.properties ,也放在 classpath 下面(如果用 Eclipse 的话,放在 src 目录下即可)。然后你就可以跑了。

以下链接详细讲解: www.cublog.cn/u/25176/showart_190067.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值