From 866f09e9ee02dce2ee3a847e9a3bb679909e0ac6 Mon Sep 17 00:00:00 2001 From: Levente Pap <levente.pap@iota.org> Date: Sun, 12 Jul 2020 22:34:39 +0200 Subject: [PATCH] New metric MessageRequestQueueSize --- plugins/metrics/message.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/plugins/metrics/message.go b/plugins/metrics/message.go index 927ce519..72319d94 100644 --- a/plugins/metrics/message.go +++ b/plugins/metrics/message.go @@ -26,6 +26,9 @@ var ( // protect map from concurrent read/write. messageCountPerPayloadMutex syncutils.RWMutex + + // number of messages being requested by the message layer. + requestQueueSize atomic.Int64 ) ////// Exported functions to obtain metrics from outside ////// @@ -54,6 +57,11 @@ func MessageTips() uint64 { return messageTips.Load() } +// MessageRequestQueueSize returns the number of message requests the node currently has registered. +func MessageRequestQueueSize() int64 { + return requestQueueSize.Load() +} + ////// Handling data updates and measuring ////// func increasePerPayloadCounter(p payload.Type) { @@ -93,3 +101,8 @@ func measureReceivedMPS() { // trigger events for outside listeners Events.ReceivedMPSUpdated.Trigger(sampledMPS) } + +func measureRequestQueueSize() { + size := int64(messagelayer.MessageRequester().RequestQueueSize()) + requestQueueSize.Store(size) +} -- GitLab