gpt4 book ai didi

java - Spring Boot 和使用外部 Tomcat 进行日志记录

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:54 26 4
gpt4 key购买 nike

我正在外部 Tomcat 服务器上部署我的 Spring Boot 应用程序。我似乎无法让我的 eclipse 控制台显示我在代码中编写的日志消息:

private static final Logger log = LoggerFactory.getLogger(PersonServiceImpl.class);
...
log.info("Running...");

我设法记录了所有 hibernate 跟踪,但仍然无法显示我添加到我的代码中的日志消息:

logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
logging.level.root=INFO
logging.level.org.springframework.web=INFO

并且 catalina 日志文件夹不包含我需要的记录信息。

我该怎么办?

最佳答案

我认为,您将 spring boot 应用程序部署在外部 tomcat 中,并将其打包为 war 文件。

你可以检查这个配置:

在你的 pom.xml 中

<!-- mark the embedded tomcat server as provided -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

包装值(value):

<packaging>war</packaging>

在依赖项中,如果您使用 Web 启动器:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

它传递地依赖于日志启动器,这意味着我们只能添加启动器 web 依赖,不再提供日志组件。

然后在 application.properties 文件中,添加以下行:

logging.level.org.springframework.web=INFO
logging.level.org.hibernate=INFO

之后,使用maven,你可以输入:

mvn clean package

并将其移动到您的外部 tomcat 中:

cp target/project.war apache-tomcat-8.X.X/webapps/project.war
./apache-tomcat-8.X.X/bin/startup.sh

关于java - Spring Boot 和使用外部 Tomcat 进行日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47977510/

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