From 2cf0682d8d7f11a183170a51d6aa9f9dc9dd90ed Mon Sep 17 00:00:00 2001 From: Daniel Gultsch <daniel@gultsch.de> Date: Mon, 25 Jan 2021 12:05:09 +0100 Subject: [PATCH] better logging for nexmo verification provider --- .../server/controller/PasswordController.java | 2 +- .../verification/NexmoVerificationProvider.java | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/main/java/im/quicksy/server/controller/PasswordController.java b/src/main/java/im/quicksy/server/controller/PasswordController.java index 99dee69..d6873fc 100644 --- a/src/main/java/im/quicksy/server/controller/PasswordController.java +++ b/src/main/java/im/quicksy/server/controller/PasswordController.java @@ -80,7 +80,7 @@ public class PasswordController extends BaseController { return halt(400, "Unable to parse phone number"); } - Jid jid = Utils.jidOf(phonenumber); + final Jid jid = Utils.jidOf(phonenumber); if (Configuration.getInstance().isPreventRegistration() && MyEjabberdApi.getInstance().getUserResources(jid.getEscapedLocal(), jid.getDomain()).size() > 0) { return halt(409); diff --git a/src/main/java/im/quicksy/server/verification/NexmoVerificationProvider.java b/src/main/java/im/quicksy/server/verification/NexmoVerificationProvider.java index 7507be9..4a99758 100644 --- a/src/main/java/im/quicksy/server/verification/NexmoVerificationProvider.java +++ b/src/main/java/im/quicksy/server/verification/NexmoVerificationProvider.java @@ -48,11 +48,19 @@ public class NexmoVerificationProvider implements VerificationProvider { public boolean verify(Phonenumber.PhoneNumber phoneNumber, String input) throws RequestFailedException { final Pin pin = PIN_CACHE.getIfPresent(phoneNumber); if (pin == null) { + LOGGER.warn("The pin for {} has expired", phoneNumber); throw new TokenExpiredException("No pin found for this phone number"); } try { - return pin.verify(input); - } catch (TooManyAttemptsException e) { + final boolean verified = pin.verify(input); + if (verified) { + LOGGER.info("Pin for {} has been verified successfully", phoneNumber); + } else { + LOGGER.warn("Pin for {} was incorrect", phoneNumber); + } + return verified; + } catch (final TooManyAttemptsException e) { + LOGGER.warn("Unable to verify pin for {}. Too many attempts", phoneNumber); throw new TokenExpiredException(e); } } @@ -69,7 +77,7 @@ public class NexmoVerificationProvider implements VerificationProvider { } else { from = nexmoPhoneNumber; } - LOGGER.info("requesting SMS through nexmo for {}", to); + LOGGER.info("requesting SMS through nexmo for {}", phoneNumber); final Call call = OK_HTTP_CLIENT.newCall(new Request.Builder() .post(new FormBody.Builder() .add("from", from) @@ -104,8 +112,7 @@ public class NexmoVerificationProvider implements VerificationProvider { throw new RequestFailedException("Invalid number of result messages"); } } - LOGGER.info("call was successful"); - } catch (IOException e) { + } catch (final IOException e) { LOGGER.warn("failed to request SMS verification", e); throw new RequestFailedException(e); } -- GitLab