From c9e82873f111ad1eebf6b8533b07ea578545fb34 Mon Sep 17 00:00:00 2001 From: Sanaz Taheri Boshrooyeh <35961250+staheri14@users.noreply.github.com> Date: Thu, 24 Mar 2022 09:47:40 -0800 Subject: [PATCH] Increase rln-relay logging (#908) * updates default rln-relay content topic * adds further debug and trace level logs * converts a debug level log to the trace level --- waku/v2/node/config.nim | 2 +- waku/v2/node/wakunode2.nim | 26 ++++++++++++++----- .../waku_rln_relay/waku_rln_relay_utils.nim | 2 +- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/waku/v2/node/config.nim b/waku/v2/node/config.nim index 103c89ce3..db66872d9 100644 --- a/waku/v2/node/config.nim +++ b/waku/v2/node/config.nim @@ -106,7 +106,7 @@ type rlnRelayContentTopic* {. desc: "the pubsub topic for which rln-relay gets enabled", - defaultValue: "/toy-chat/2/huilong/proto" + defaultValue: "/toy-chat/2/luzhou/proto" name: "rln-relay-content-topic" }: ContentTopic staticnodes* {. diff --git a/waku/v2/node/wakunode2.nim b/waku/v2/node/wakunode2.nim index 9140ae8a3..07e6e036a 100644 --- a/waku/v2/node/wakunode2.nim +++ b/waku/v2/node/wakunode2.nim @@ -495,22 +495,36 @@ when defined(rln): debug "rln-relay topic validator is called" let msg = WakuMessage.init(message.data) if msg.isOk(): - let wakumessage = msg.value() + let + wakumessage = msg.value() + payload = string.fromBytes(wakumessage.payload) + # check the contentTopic if (wakumessage.contentTopic != "") and (contentTopic != "") and (wakumessage.contentTopic != contentTopic): - debug "content topic did not match:", contentTopic=wakumessage.contentTopic, payload=string.fromBytes(wakumessage.payload) + debug "content topic did not match:", contentTopic=wakumessage.contentTopic, payload=payload return pubsub.ValidationResult.Accept + # validate the message - let validationRes = node.wakuRlnRelay.validateMessage(wakumessage) + let + validationRes = node.wakuRlnRelay.validateMessage(wakumessage) + proof = toHex(wakumessage.proof.proof) + epoch = fromEpoch(wakumessage.proof.epoch) + root = toHex(wakumessage.proof.merkleRoot) + shareX = toHex(wakumessage.proof.shareX) + shareY = toHex(wakumessage.proof.shareY) + nullifier = toHex(wakumessage.proof.nullifier) case validationRes: of Valid: - debug "message validity is verified, relaying:", wakumessage=wakumessage, payload=string.fromBytes(wakumessage.payload) + debug "message validity is verified, relaying:", contentTopic=wakumessage.contentTopic, epoch=epoch, timestamp=wakumessage.timestamp, payload=payload + trace "message validity is verified, relaying:", proof=proof, root=root, shareX=shareX, shareY=shareY, nullifier=nullifier return pubsub.ValidationResult.Accept of Invalid: - debug "message validity could not be verified, discarding:", wakumessage=wakumessage, payload=string.fromBytes(wakumessage.payload) + debug "message validity could not be verified, discarding:", contentTopic=wakumessage.contentTopic, epoch=epoch, timestamp=wakumessage.timestamp, payload=payload + trace "message validity could not be verified, discarding:", proof=proof, root=root, shareX=shareX, shareY=shareY, nullifier=nullifier return pubsub.ValidationResult.Reject of Spam: - debug "A spam message is found! yay! discarding:", wakumessage=wakumessage, payload=string.fromBytes(wakumessage.payload) + debug "A spam message is found! yay! discarding:", contentTopic=wakumessage.contentTopic, epoch=epoch, timestamp=wakumessage.timestamp, payload=payload + trace "A spam message is found! yay! discarding:", proof=proof, root=root, shareX=shareX, shareY=shareY, nullifier=nullifier if spamHandler.isSome: let handler = spamHandler.get handler(wakumessage) diff --git a/waku/v2/protocol/waku_rln_relay/waku_rln_relay_utils.nim b/waku/v2/protocol/waku_rln_relay/waku_rln_relay_utils.nim index a3f91bfcb..4b955a9af 100644 --- a/waku/v2/protocol/waku_rln_relay/waku_rln_relay_utils.nim +++ b/waku/v2/protocol/waku_rln_relay/waku_rln_relay_utils.nim @@ -224,7 +224,7 @@ proc proofVerify*(rlnInstance: RLN[Bn256], data: openArray[byte], proof: RateLim proofBytes= serialize(proof, data) proofBuffer = proofBytes.toBuffer() f = 0.uint32 - debug "serialized proof", proof=proofBytes.toHex() + trace "serialized proof", proof=proofBytes.toHex() let verifyIsSuccessful = verify(rlnInstance, addr proofBuffer, addr f) if not verifyIsSuccessful: