java health check_Java HikariConfig.setHealthCheckRegistry方法代码示例

import com.zaxxer.hikari.HikariConfig; //导入方法依赖的package包/类

@Bean(destroyMethod = "close")

@ConditionalOnExpression("#{!environment.acceptsProfiles('cloud') && !environment.acceptsProfiles('heroku')}")

public DataSource dataSource(DataSourceProperties dataSourceProperties, LeagueProperties leagueProperties) {

log.debug("Configuring Datasource");

if (dataSourceProperties.getUrl() == null) {

log.error("Your database connection pool configuration is incorrect! The application" +

" cannot start. Please check your Spring profile, current profiles are: {}",

Arrays.toString(env.getActiveProfiles()));

throw new ApplicationContextException("Database connection pool is not configured correctly");

}

HikariConfig config = new HikariConfig();

config.setDataSourceClassName(dataSourceProperties.getDriverClassName());

config.addDataSourceProperty("url", dataSourceProperties.getUrl());

if (dataSourceProperties.getUsername() != null) {

config.addDataSourceProperty("user", dataSourceProperties.getUsername());

} else {

config.addDataSourceProperty("user", ""); // HikariCP doesn't allow null user

}

if (dataSourceProperties.getPassword() != null) {

config.addDataSourceProperty("password", dataSourceProperties.getPassword());

} else {

config.addDataSourceProperty("password", ""); // HikariCP doesn't allow null password

}

//MySQL optimizations, see https://github.com/brettwooldridge/HikariCP/wiki/MySQL-Configuration

if ("com.mysql.jdbc.jdbc2.optional.MysqlDataSource".equals(dataSourceProperties.getDriverClassName())) {

config.addDataSourceProperty("cachePrepStmts", leagueProperties.getDatasource().isCachePrepStmts());

config.addDataSourceProperty("prepStmtCacheSize", leagueProperties.getDatasource().getPrepStmtCacheSize());

config.addDataSourceProperty("prepStmtCacheSqlLimit", leagueProperties.getDatasource().getPrepStmtCacheSqlLimit());

}

if (metricRegistry != null) {

config.setMetricRegistry(metricRegistry);

}

if (healthCheckRegistry != null) {

config.setHealthCheckRegistry(healthCheckRegistry);

}

return new HikariDataSource(config);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值