diff --git a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicator.java b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicator.java index ca79e4240e..08dc0eafa9 100644 --- a/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicator.java +++ b/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicator.java @@ -115,6 +115,7 @@ public class DataSourceHealthIndicator extends AbstractHealthIndicator new SingleColumnRowMapper()); Object result = DataAccessUtils.requiredSingleResult(results); builder.withDetail("result", result); + builder.withDetail("validationQuery", validationQuery); } } diff --git a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicatorTests.java b/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicatorTests.java index 77dab42857..31b434b908 100644 --- a/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicatorTests.java +++ b/spring-boot-project/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/jdbc/DataSourceHealthIndicatorTests.java @@ -26,6 +26,7 @@ import org.junit.Test; import org.springframework.boot.actuate.health.Health; import org.springframework.boot.actuate.health.Status; +import org.springframework.boot.jdbc.DatabaseDriver; import org.springframework.boot.jdbc.EmbeddedDatabaseConnection; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.datasource.SingleConnectionDataSource; @@ -68,6 +69,8 @@ public class DataSourceHealthIndicatorTests { Health health = this.indicator.health(); assertThat(health.getDetails().get("database")).isNotNull(); assertThat(health.getDetails().get("result")).isNotNull(); + assertThat(health.getDetails().get("validationQuery")) + .isEqualTo(DatabaseDriver.HSQLDB.getValidationQuery()); } @Test @@ -75,12 +78,14 @@ public class DataSourceHealthIndicatorTests { this.indicator.setDataSource(this.dataSource); new JdbcTemplate(this.dataSource) .execute("CREATE TABLE FOO (id INTEGER IDENTITY PRIMARY KEY)"); - this.indicator.setQuery("SELECT COUNT(*) from FOO"); + String customValidationQuery = "SELECT COUNT(*) from FOO"; + this.indicator.setQuery(customValidationQuery); Health health = this.indicator.health(); - System.err.println(health); assertThat(health.getDetails().get("database")).isNotNull(); assertThat(health.getStatus()).isEqualTo(Status.UP); assertThat(health.getDetails().get("result")).isNotNull(); + assertThat(health.getDetails().get("validationQuery")) + .isEqualTo(customValidationQuery); } @Test