一个容器中run多个项目,每个项目多有自己的log4j配置,但是会覆盖其他的只有一个有作用.求大神指点一二.
配置的时候指定配置的文件名,区别开来试试###### 把每个logger的名称定义为在全部项目中都不重复的...
不过我是从来没碰到过你这种问题. ######仅供参考.######速度发上来,我们老大想知道这个是怎么做到的。###### 没明白问题,能说详细点吗?你这多个项目是maven dependency的关系?还是独立的?如果是独立的,每个项目只是用自己classpath下面的log4j.properties。如果是maven dependency的关系,class loader也只会load最先的一个,后面的都会忽略。
如果你是有多个properties,例如log4j.admin.perperties和log4j.public.properties的话,你可以用:
#log4j.admin.properties log4j.appender.admin=org.apache.log4j.ConsoleAppender
#log4j.public.properties log4j.appender.public=org.apache.log4j.ConsoleAppender
然后再在 class 里面:
PropertyConfigurator.configure(Client.class .getResource("/log4j.admin.properties")); Logger adminLogger = Logger.getLogger("admin"); adminLogger.info("admin log");public 类似。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。