gpt4 book ai didi

java - 我怎样才能理顺我的 Tomcat 日志记录?

转载 作者:行者123 更新时间:2023-11-28 22:40:56 25 4
gpt4 key购买 nike

我正在处理一个我没有做过的 Tomcat 配置,希望得到任何帮助来修复日志记录。出于未知原因,启动时传递了三个与日志记录相关的 -D 参数。该过程如下所示:

./bin/java -Djava.util.logging.config.file=CATALINA_BASE_DIR_HERE/tomcat/conf/logging.properties 
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Dlog4j.configuration=file:CATALINA_BASE_DIR_HERE/tomcat/conf/log4j.properties ...

logging.properties 文件的相关部分如下所示。我相信这是标准的。

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
...
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.

为了完整起见,这里是 log4j.properties 文件的相关部分:

log4j.rootLogger=INFO, logfile

log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.DatePattern='.'yyyy-MM-dd
log4j.appender.logfile.File=MY_DIR/my_log.txt
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern = [%d{ABSOLUTE}] [%t] %-5p [%c] - %m%n
log4j.appender.logfile.Append=true

# per first answer given below, added:
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost] = INFO, logfile

在今天之前,没有真正的问题 - 所有日志数据都按需要进入 log4j 文件。这个Tomcat中部署的war文件使用了Spring Data JPA和Hibernate。为了调试,启用了 showSql。所有的查询都出来了,但是到 localhost.DATE.log 文件。任何人都可以告诉如何修复以便所有语句都转到 log4j 指定文件吗?

最佳答案

如果您将showSql 设置为true,hibernate 会将SQL 语句打印到SystemOut。您应该将 log4j.logger.org.hibernate.SQL=DEBUG 添加到 log4j 配置中,这样 hibernate 也可以记录 SQL 语句。 (原因可见this answer)

默认情况下,Tomcat 使用 java.util.logging API 进行所有内部日志记录。所以输出转到 localhost.DATE.log 正如你提到的那样。

您可以更改配置,请引用 Using Log4j部分(适用于 Tomcat 6.x~8.x)

关于java - 我怎样才能理顺我的 Tomcat 日志记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36916563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com