mirror of
https://github.com/logos-messaging/logos-delivery.git
synced 2026-05-09 08:19:52 +00:00
add event_loop_accumulates_lag_secs (#3833)
This commit is contained in:
parent
300f584efc
commit
587014e34f
@ -10,6 +10,9 @@ declarePublicGauge event_loop_load,
|
||||
"chronos event loop load EWMA by window (1.0 = sustained lag at MaxAcceptedLag)",
|
||||
labels = ["window"]
|
||||
|
||||
declarePublicCounter event_loop_accumulated_lag_secs,
|
||||
"chronos event loop total accumulated lag in seconds since node start"
|
||||
|
||||
type OnLagChange* = proc(lagTooHigh: bool) {.gcsafe, raises: [].}
|
||||
|
||||
proc eventLoopMonitorLoop*(onLagChange: OnLagChange = nil) {.async.} =
|
||||
@ -55,6 +58,8 @@ proc eventLoopMonitorLoop*(onLagChange: OnLagChange = nil) {.async.} =
|
||||
let lagSecs = lag.nanoseconds.float64 / 1_000_000_000.0
|
||||
let load = lagSecs / maxAcceptedLagSecs
|
||||
|
||||
event_loop_accumulated_lag_secs.inc(lagSecs)
|
||||
|
||||
ewma1m = alpha1m * load + (1.0 - alpha1m) * ewma1m
|
||||
ewma5m = alpha5m * load + (1.0 - alpha5m) * ewma5m
|
||||
ewma15m = alpha15m * load + (1.0 - alpha15m) * ewma15m
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user