我正在尝试将Liquibase与Spring Boot一起使用。这是我的application.properties
文件:
# ----------------------------------------
# DATA PROPERTIES
# ----------------------------------------
spring.datasource.url=jdbc:postgresql://xxxxxx:5432/dev
spring.datasource.schema=my_schema
spring.datasource.username=my_username
spring.datasource.password=my_password
# LIQUIBASE (LiquibaseProperties)
liquibase.default-schema=${spring.datasource.schema}
liquibase.user=${spring.datasource.username}
liquibase.password=${spring.datasource.password}
更改集应用良好(可以创建表)。
当我访问/liquibase
执行器的endpoint时,问题来了,我得到一个500错误:
无法获取Liquibase更新日志
我还得到以下日志:
org.postgresql.util.PSQLException: ERROR:关系"public.databasechangelog"不存在
如果问题是用于访问更改日志表的模式前缀:“public”与“my_schema”。
我想Spring。数据源。schema设置的参数是否正确?
这里只是一个猜测-我认为问题是您的“真实”模式由spring.datasource.schema
设置,但liquibase表存储在public
中,并且可能是Spring Boot执行器不知道这些可以分开。
以下是一个有效的解决方案(来自此答案):
# ----------------------------------------
# DATA PROPERTIES
# ----------------------------------------
spring.datasource.url=jdbc:postgresql://xxxxxx:5432/dev?currentSchema=my_schema
在Spring Boot 2.2.0中,“httptrace”执行器endpoint不再存在。如何恢复此功能?
我正在开发一个Spring boot应用程序(使用Maven),它使用Liquibase(连接到Postgres容器)。我想在运行时手动运行liquibase,但我真的不知道怎么做。我想有一个选项来触发我的应用程序运行并启动liquibase。 我已经在application.properties文件上关闭了liquibase,它确实在启动时停止了liquibase的运行,但是我没有找到任何方法在
问题内容: 我一直在研究Spring / Spring MVC应用程序,并且希望添加性能指标。我遇到过Spring Boot Actuator,它看起来是一个不错的解决方案。但是我的应用程序不是Spring Boot应用程序。我的应用程序在传统容器Tomcat 8中运行。 我添加了以下依赖 我创建了以下配置类。 我什至可以按照StackOverflow另一篇文章的建议在每个配置类上添加 问题答案:
Spring Boot Actuator中存在一个错误,如果使用了某些属性,在暴露处的就绪endpoint和处的活动endpoint时不起作用。您会得到一个白标签错误页面。 此应用程序没有显式的/错误映射,因此您将其视为回退。 这些属性包括: 默认情况下,我需要使用管理端口,以便可以使用执行器/指标进行监控。因此,为了进行可靠的健康检查,我需要在主/应用程序端口上公开活动性和就绪性endpoint
在我的项目中,我不想使用。我的application.java有、和注释。 我在pom.xml中添加了Spring Boot执行器依赖项。但是,当我尝试访问时,得到的是404。我相信我需要指定一些配置类作为导入注释的一部分。我需要帮助弄清楚配置是什么。
我在我的Spring启动应用程序中遇到了终结点的问题-它被遗漏了。这是我的应用程序配置: Spring启动执行器版本是。例如,和endpoint工作良好。