aboutsummaryrefslogtreecommitdiff
path: root/cardio
diff options
context:
space:
mode:
authorXe Iaso <me@xeiaso.net>2023-06-08 08:17:16 -0400
committerXe Iaso <me@xeiaso.net>2023-06-08 08:17:16 -0400
commitb4605f6b6f99964aab4c786bb7b9df6e8dc39f01 (patch)
tree7b70194233b593b666c1ca23503d5116f0e76c6d /cardio
parent367c295594e2c75afc0ac4fde998a990e8a838cd (diff)
downloadx-b4605f6b6f99964aab4c786bb7b9df6e8dc39f01.tar.xz
x-b4605f6b6f99964aab4c786bb7b9df6e8dc39f01.zip
cardio: add tachycardia counter
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'cardio')
-rw-r--r--cardio/cardio.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/cardio/cardio.go b/cardio/cardio.go
index cdffd6a..880e4cd 100644
--- a/cardio/cardio.go
+++ b/cardio/cardio.go
@@ -47,9 +47,11 @@ func Heartbeat(ctx context.Context, min, max time.Duration) (<-chan struct{}, fu
var currDelayLock sync.Mutex
var counter *expvar.Int
+ var tachycardiaCounter *expvar.Int
if name, ok := opname.Get(ctx); ok {
counter = expvar.NewInt("gauge_heartbeat_" + name)
+ tachycardiaCounter = expvar.NewInt("gauge_heartbeat_backoff_" + name)
}
slower := func() {
@@ -89,6 +91,7 @@ func Heartbeat(ctx context.Context, min, max time.Duration) (<-chan struct{}, fu
select {
case heartbeat <- struct{}{}:
default:
+ tachycardiaCounter.Add(1)
slower() // back off if the channel is full
}
}