FileAppender a0=new FileAppender(new SimpleLayout(), "a0.log");
FileAppender a1=new FileAppender(new SimpleLayout(), "a1.log");
Logger root=Logger.getRootLogger();
root.addAppender(a0);
Logger x=Logger.getLogger("x");
x.addAppender(a1);
Logger xyz=Logger.getLogger("x.y.z");
xyz.debug("xyz debug...");
xyz.info("xyz info...");
两个log文件都会记录日志
DEBUG - xyz debug...INFO - xyz info...
这说明logger是有继承性的,xyz没有配置appender,就会继承祖先的配置
继承介绍
1、log4j的继承是通过命名来实现的。
比如logger.a.b就会继承logger.a的一些设置。
2、子logger会默认继承父logger的appender。
如果配置中这样写:logger.a=INFO,app_a,logger.a.b=DEBUG,app_b,那么实际上,logger.a.b的配置是这样的:logger.a.b=DEBUG,app_b,app_a。
3、子logger只在自己未定义输出级别的情况下,才会继承父logger的输出级别。
比如配置中这样写:logger.a=DEBUG,app_a,logger.a.b=,app_b,那么实际上,logger.a.b的配置是:logger.a.b=DEBUG,app_b,app_a。
但是如果配置中这样写:logger.a=DEBUG,app_a,logger.a.b=INFO,app_b,那么实际上,logger.a.b的输出级别就是INFO,而不会继承logger.a的DEBUG。这样,如果用logger.a.b记录DEBUG信息,它是不会向app_a输出的。
大多数的情况,对于未设置的logger来说,不需要自动继承祖先的配置,此时需要取消祖先叠加(additivity)在子logger上的设置,通过将additivity的标识设为false
BasicConfigurator.configure();
Logger logger=Logger.getLogger("x.y");
logger.setLevel(Level.TRACE);
logger.log(Level.DEBUG, "设置的日志级别为:"+logger.getLevel());
logger.trace("trace...");
logger.debug("debug...");
logger.info("info...");
logger.warn("warn...");
logger.error("error...");
logger.fatal("fatal...");
修改logger.setLevel(Level.TRACE)中的级别,即可知道 ALL<TRACE<DEBUG<WARN<ERROR<FATAL
分享到:
相关推荐
Log4J使用完全手册
很不错的Log4j的帮助手册,让初学者更容易上手,让精通者更加精通
log4j中文手册 下载后解压即可。 pdf方便使用,放心下载。
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式...
Log4J使用手册,包括日常用到的Log4J使用方法。
Log4j的详细的配置使用手册
针对Log4j 2 远程代码执行漏洞,需要用到的升级资源包,适用于maven资源库,包括log4j,log4j-core,log4j-api,log4j-1.2-api,log4j-jpa等全套2.15.0 maven资源库jar包。如果是maven本地仓库使用,需要将zip包解压...
以log4j complete manual的pdf版本为模板转换的word文档,格式基本相同,没有太大的出入。此版本主要方便大家用软件取词。
log4j-1.2rc1.jar, log4j-1.3alpha-7.jar, log4j-api-2.0.2-javadoc.jar, log4j-api-2.0.2-sources.jar, log4j-api-2.0.2.jar, log4j-boot.jar, log4j-bridge-0.9-sources.jar, log4j-bridge-0.9-tests.jar, log4j-...
描述了log4j的配置方法,日志的级别,日志输出的实现方式等。
log4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rarlog4j手册.rar
若依框架使用的log4j2.16.0,修复log4j漏洞log4j2下载最新log4j2.16.0下载
配置内容涵盖面广,参数讲解详细。
Apache log4j2零日漏洞,根据 log4j-2.15.0-rc2 版本编译生成log4j-api-2.15.0.jar 1.解压你的jar jar xvf XXX.jar 2. 删除旧版本jar cd ./BOOT-INF/lib rm -rf log4j-api-*.jar 3. 上传新版本log4j-api-2.15.0....
Apache log4j2零日漏洞,根据 log4j-2.15.0-rc2 版本编译生成log4j-api-2.15.0.jar 1.解压你的jar jar xvf XXX.jar 2. 删除旧版本jar cd ./BOOT-INF/lib rm -rf log4j-api-*.jar 3. 上传新版本log4j-api-...
Log4j2学习笔记,引入log4j2的依赖-log4j2.xml配置模板-application.properties文件配置-使用
Log4j 是一个日志记录框架,Log4j 2 是对 Log4j 的升级,提供了重大改进,超越其前身 Log4j 1.x,并提供许多其它现代功能 ,例如对标记的支持、使用查找的属性替换、lambda 表达式与日志记录时无垃圾等。 Apache ...
下面小编就为大家带来老生常谈Log4j和Log4j2的区别(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
描述Log4j2的配置详情及相对Log4j的优点,包括效率测试程序