修改数据源健康监测
This commit is contained in:
@ -5,19 +5,20 @@ import java.util.Map;
|
|||||||
import javax.sql.DataSource;
|
import javax.sql.DataSource;
|
||||||
|
|
||||||
import org.springframework.beans.factory.ObjectProvider;
|
import org.springframework.beans.factory.ObjectProvider;
|
||||||
import org.springframework.boot.actuate.autoconfigure.health.ConditionalOnEnabledHealthIndicator;
|
|
||||||
import org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthContributorAutoConfiguration;
|
import org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthContributorAutoConfiguration;
|
||||||
import org.springframework.boot.actuate.health.AbstractHealthIndicator;
|
import org.springframework.boot.actuate.health.AbstractHealthIndicator;
|
||||||
import org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator;
|
import org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator;
|
||||||
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||||
import org.springframework.boot.jdbc.metadata.DataSourcePoolMetadataProvider;
|
import org.springframework.boot.jdbc.metadata.DataSourcePoolMetadataProvider;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 解决 shardingjdbc 在 spring 2.3.1 及以上版本中健康监测异常问题 #6002
|
* 解决 shardingjdbc 在 spring 2.3.1 及以上版本中健康监测异常问题 #6002
|
||||||
*
|
*
|
||||||
* @author Ajaxfan
|
* @author Ajaxfan
|
||||||
*/
|
*/
|
||||||
@ConditionalOnEnabledHealthIndicator("db")
|
@ConditionalOnProperty(name = "management.health.db.enabled", havingValue = "true", matchIfMissing = true)
|
||||||
@Configuration
|
@Configuration
|
||||||
public class EBTPDataSourceHealthContributorAutoConfiguration extends DataSourceHealthContributorAutoConfiguration {
|
public class EBTPDataSourceHealthContributorAutoConfiguration extends DataSourceHealthContributorAutoConfiguration {
|
||||||
|
|
||||||
@ -32,6 +33,9 @@ public class EBTPDataSourceHealthContributorAutoConfiguration extends DataSource
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
protected AbstractHealthIndicator createIndicator(DataSource source) {
|
protected AbstractHealthIndicator createIndicator(DataSource source) {
|
||||||
|
if (source instanceof AbstractRoutingDataSource) {
|
||||||
|
return super.createIndicator(source);
|
||||||
|
}
|
||||||
return new DataSourceHealthIndicator(source, "select 1");
|
return new DataSourceHealthIndicator(source, "select 1");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user