From a15b8ddde2a23e5f5f992168df89446f38114c34 Mon Sep 17 00:00:00 2001 From: Clement Escoffier Date: Fri, 22 Jul 2022 15:37:11 +0200 Subject: [PATCH] Fix https://github.com/quarkusio/quarkus/issues/26885 - improve Redis health check output --- .../redis/runtime/client/health/RedisHealthCheck.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/extensions/redis-client/runtime/src/main/java/io/quarkus/redis/runtime/client/health/RedisHealthCheck.java b/extensions/redis-client/runtime/src/main/java/io/quarkus/redis/runtime/client/health/RedisHealthCheck.java index e179a0cf1d5a1..5a64eb1d2ffb6 100644 --- a/extensions/redis-client/runtime/src/main/java/io/quarkus/redis/runtime/client/health/RedisHealthCheck.java +++ b/extensions/redis-client/runtime/src/main/java/io/quarkus/redis/runtime/client/health/RedisHealthCheck.java @@ -22,6 +22,7 @@ import io.quarkus.redis.datasource.ReactiveRedisDataSource; import io.quarkus.redis.datasource.RedisDataSource; import io.quarkus.redis.runtime.client.config.RedisConfig; +import io.smallrye.mutiny.TimeoutException; import io.vertx.mutiny.redis.client.Command; import io.vertx.mutiny.redis.client.Redis; import io.vertx.mutiny.redis.client.Request; @@ -88,7 +89,12 @@ public HealthCheckResponse call() { Duration timeout = getTimeout(client.getKey()); Response response = redisClient.send(Request.cmd(Command.PING)).await().atMost(timeout); builder.up().withData(redisClientName, response.toString()); + } catch (TimeoutException e) { + return builder.down().withData("reason", "client [" + client.getKey() + "]: timeout").build(); } catch (Exception e) { + if (e.getMessage() == null) { + return builder.down().withData("reason", "client [" + client.getKey() + "]: " + e).build(); + } return builder.down().withData("reason", "client [" + client.getKey() + "]: " + e.getMessage()).build(); } }