首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与slf4j、log4j和java.util.logging混合的java日志记录

与slf4j、log4j和java.util.logging混合的java日志记录
EN

Stack Overflow用户
提问于 2018-04-26 23:36:46
回答 1查看 1.1K关注 0票数 1

我正在Weblogic服务器上运行一个web应用程序(我不太熟悉)。

通过JVM,将带有日志级调试的log4j配置传递给应用程序。在日志文件中,我还可以找到一些调试级别的日志条目。

到目前一切尚好。

在调试期间,我发现对logger.debug()的一些调用不在日志文件中。

私有静态最终org.slf4j.Logger记录器= LoggerFactory.getLogger(ActionCtr.class);

方法调用肯定会命中,但不会将任何内容写入文件。

如果我在调试过程中迈出了一步,就会在记录器中看到: org.slf4j.impl.JDK14LoggerAdapter(com.example.application.ActionCtr) "java.util.logging.FileHandler.pattern“-> "%h/java%u.log”

这给我带来了一些问题(因为我无法更改正在运行的应用程序):

1)它所使用的应用程序怎么可能是使用一个混合的log4j和java.util.logging

2)如何确定在哪些类中使用什么?

3)没有%h/java%u.log (~/java*..log),所以我尝试提供一个java.util.logging一致性属性文件,但这并没有改变--我如何确定运行中的记录器从何处获得配置,以正确配置它?

EN

回答 1

Stack Overflow用户

发布于 2018-04-27 03:46:16

1)它所使用的应用程序怎么会使用混合的log4j和java.util.logging

任何这些日志记录框架都可以由应用程序直接使用,也可以由应用程序使用的依赖库使用。不需要太多的依赖关系就可以得到一群日志框架搭便车者。

SLF4J手册解释了日志记录框架是如何与所有其他框架发生冲突的。这就是你看到org.slf4j.impl.JDK14LoggerAdapter的原因。

我如何确定在哪些类中使用什么?

假设您是指直接使用,您可以使用杰德斯贾瓦普

我如何确定运行中的记录器从何处获得其配置,以便对其进行配置?

JConsole工具可以在运行时访问JUL记录器。它还将显示所有系统属性,其中可能包括logging.properties文件的路径。

如果应用程序是以一种非标准的方式务实地配置日志记录,那么一个选项就是使用java.security.debug选项access。在安全管理器下运行应用程序将获得所有或所有所需权限,但随后启用访问跟踪。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50053298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档