log4j.properties 和 logstash.properties 之间的区别

log4j.properties 和 logstash.properties 之间的区别

log4j.properties 和 logs.properties 有什么区别?

我应该修改哪一个才能将应用程序日志记录到 catalina.2021.01.01?

目前,docker 镜像仅记录 tomcat 启动日志,catalina.2021.01.01但其余应用程序日志都打印到控制台上。

这是当前设置

1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

我正在尝试配置它的应用程序以记录它catalina.2021.01.01和 tomcat 启动日志catalina.out

答案1

这些是两个不同日志框架的配置文件:

  • logging.properties是默认 Java 日志框架的配置文件java.util.logging。在 Tomcat 下,通常配置为特殊的LogManagerlogging.properties,它允许您为每个应用程序使用不同的
  • log4j.properties是配置文件Log4j 1.x

正如解释的那样Tomcat 的文档

在 Apache Tomcat 上运行的 Web 应用程序可以:

  • 使用其选择的任何日志框架。
  • 使用系统日志记录 API java.util.logging
  • 使用 Java Servlets 规范提供的日志记录 API,javax.servlet.ServletContext.log(...)

通常的选择是第一个。

许多应用程序使用日志外观(如杰诚SLF4J或者Log4j 2 API)并且外观选择后端(java.util.logging,Log4j 1.x,Logback或 Log4j 2) 根据您添加到类路径的库。

因此,为了配置您的应用程序日志,您需要知道它使用哪个框架。

相关内容