09月04日学习杂记(LOG4J)

今天我们学习了LOG4J,对它有一些比较片面的了解.
由"为什么要把事件分为不同的等级"引入正题?
因为不同事件的本质是不同的,有的事件至关重要(银行系统被攻击),而有的则无关紧要比较某个变以量在某时刻的值(如果这个数值在调试阶段有什么顶天立地的作用就另当别论了)

可以在多个设备上输出信息,一个设备就是可以理解为程序中的一个HANDLER


LEVEL是覆盖的关系而HANDLER是叠加的关系,意思是说假如父类的LEVEL值为1,子类的值为2,则父类的值在子类不再有作用,子类的LEVEL的值就是非功过,而HANDLER(也就是输入设备)的机制就不同了,比如说父类的输出设备为显示器,子类的输出设备为文件,则子类不但要把信息输出到文件,还要继承父类的输出设备(显示器).

class X{
 static {X x = new X();}
        getManager{return x};
}

 

java -Djava.util.logging.config.file=<属性文件名><类名>

LOGDEMO1.JAVA   (程序主文件)
package cn.itcast;
import java.util.logging.Logger;
//import org.apache.commons.logging.Log;
//import org.apache.commons.logging.LogFactory;
/**
 * descrption: logdemo1
 * @author zxx
 */
public class LogDemo1 {

 /**
  * @param args
  * mymethods
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Logger logger = Logger.getLogger("LogDemo1.class");
  //Log log = LogFactory.getLog(LogDemo1.class);
  //log.debug("debug");
  logger.info("info");
  logger.severe("servre");
  //logger.fatal("fatal");
  //log.error("error");
 }

}

 

LOG4J.XML(LOG4J配置文件)
<log4j:configuration debug="false" xmlns:log4j="http://jakarta.apache.org/log4j/">
 <appender name="systemout" class="org.apache.log4j.ConsoleAppender">
  <layout class="org.apache.log4j.SimpleLayout"></layout>
 </appender>
 
 <root>
  <level value="warn"/>
  <appender-ref ref="systemout"/>
 </root>
</log4j:configuration>


log4j使用常识:
Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数见表1如下: %m 输出代码中指定的消息 %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL %r 输出自应用启动到输出该log信息耗费的毫秒数 %c 输出所属的类目,通常就是所在类的全名 %t 输出产生该日志事件的线程名 %n 输出一个回车换行符,Windows平台为“/r/n”,Unix平台为“/n” %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921 %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)    基本应用 Log4J的配置 现在来看log4j.properties配置文件的意义。第一行指定了根Logger的级别是DEBUG,并将此指定输出到A1。A1就是第二行定义的org.apache.log4j.ConsoleAppe 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值