From 623aedfe78feb4d77465cfa51801c1f64e25f1b6 Mon Sep 17 00:00:00 2001 From: "Andreas Fankhauser hiddenalpha.ch" <23085769+hiddenalpha@users.noreply.github.com> Date: Wed, 17 Jul 2024 13:25:41 +0200 Subject: [PATCH] Report errors through eventBus as intended --- .../redisques/handler/GetQueuesItemsCountHandler.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/swisspush/redisques/handler/GetQueuesItemsCountHandler.java b/src/main/java/org/swisspush/redisques/handler/GetQueuesItemsCountHandler.java index 35c83411..923dc315 100644 --- a/src/main/java/org/swisspush/redisques/handler/GetQueuesItemsCountHandler.java +++ b/src/main/java/org/swisspush/redisques/handler/GetQueuesItemsCountHandler.java @@ -69,8 +69,13 @@ public GetQueuesItemsCountHandler( @Override public void handle(AsyncResult handleQueues) { if (!handleQueues.succeeded()) { - log.warn("Concealed error", exceptionFactory.newException(handleQueues.cause())); - event.reply(new JsonObject().put(STATUS, ERROR)); + Throwable ex = handleQueues.cause(); + String exmsg = ex == null ? null : ex.getMessage(); + int failureCode = 500; + if (exmsg != null && exmsg.contains("Redis waiting queue is full")) { + failureCode = 429; + } + event.reply(exceptionFactory.newReplyException(failureCode, null, ex)); return; } var ctx = new Object(){