私は次のようなPostgreSQLヘルスインジケータを作成しました:
@Component
public class PostgresHealthIndicator extends AbstractHealthIndicator {
@Autowired
DataSource postgresDataSource;
public DataSourceHealthIndicator dbHealthIndicator() {
DataSourceHealthIndicator indicator = new DataSourceHealthIndicator(postgresDataSource);
return indicator;
}
@Override
protected void doHealthCheck(Health.Builder builder) throws Exception {
Health h = dbHealthIndicator().health();
Status status = h.getStatus();
if (status != null && "DOWN".equals(status.getCode())) {
builder.down();
} else {
builder.up();
}
}
}
私のApplication.javaでは、このパッケージでこのコンポーネントをスキャンしています。
@ComponentScan({"com.bp.health"})
私のapplication.propertiesには、次のセットがあります。
endpoints.health.sensitive=false
endpoints.health.id=health
endpoints.health.enabled=true
{url} / healthを押すと、次のように表示されます。
{"ステータス": "ダウン"}
カスタムヘルスインジケーターを表示するにはどうすればよいですか?
すべての詳細を表示するには、認証を受ける必要があります。または、設定することもできます
management.security.enabled=false
endpoints.health.sensitive=false
認証されていない完全なコンテンツを表示するには
詳細については、こちらをご覧ください:本番環境での監視
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加