首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将Java Util日志记录替换为tomcat上特定于web应用程序的Log4j2

将Java Util日志记录替换为tomcat上特定于web应用程序的Log4j2
EN

Stack Overflow用户
提问于 2021-11-10 16:10:50
回答 1查看 325关注 0票数 0

我在tomcat 9+上部署了一个java应用程序。我知道如何将默认的tomcat日志记录改为使用log4j2。我已经通过遵循这个https://logging.apache.org/log4j/2.x/log4j-appserver/index.html做到了这一点。我想知道的是,除了将默认的tomcat日志记录更改为使用log4j2之外,是否可以只对我的war文件使用log4j2,而无需更改代码。我的应用程序使用JUL进行日志记录。

EN

回答 1

Stack Overflow用户

发布于 2021-11-10 21:08:29

如今,几乎任何日志记录配置都是可能的。

Tomcat使用特殊的JUL LogManager (参见ClassLoaderLogManager),允许在每个应用程序中指定不同的JUL配置。

要将所有JUL日志从应用程序重定向到Log4j2,最简单的方法是通过SLF4j。为此,请执行以下操作:

  1. jul-to-slf4jslf4j-api添加到项目中,
  2. 添加一个将所有内容重定向到handlers的WEB-INF/classes/logging.properties配置文件:SLF4JBridgeHandler= org.slf4j.bridge.SLF4JBridgeHandler .handlers =handlers

  1. 根据需要,将Log4j 2.x依赖项添加到项目中:log4j-corelog4j-apilog4j-web,以及SLF4j binding Log4j 2.x。

警告:此解决方案中存在性能损失(参见SLF4j documentation)。

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

https://stackoverflow.com/questions/69916589

复制
相关文章

相似问题

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