Tomcat 上没有 log4j.properties 文件的 SLF4J-LOG4J 日志记录

SLF4J-LOG4J logging without a log4j.properties file on Tomcat

希望你能解开这个非常神秘的谜题!

迁移到 Java8 和 Tomcat8 后,服务器上的日志信息正常,但开发人员笔记本电脑上没有日志信息。添加 Spring-boot-starter-log4j2 在笔记本电脑上有日志信息,但在服务器上没有。怎么会?怎么修?

在 parent.pom 中,使用了依赖项 slf4j-api、slf4j-log4j 绑定和 'slf4j : jcl-over-slf4j'。项目中没有 log4j.properites 个文件。在所有使用 spring 引导的地方, spring-boot-starter-logging 被排除在外。

场景 1: 在笔记本电脑上 - SLF4J 组合不产生日志记录。我想那是因为没有 log4j.properties 文件。在服务器上,此组合显示日志记录。怎么会这样?能否有一个 provided Tomcat 允许此日志记录的配置?

场景二: 当我添加 spring-boot-starter-log4j2 时,我就可以登录笔记本电脑了。服务器上根本没有日志记录。

您可以在 tomcat 环境中定义常规日志记录设置。例如 this article 中所示。

简而言之:(1) 添加一个额外的库,(2) 添加一个默认的 log4j.properties 文件。