runProbeLoop used to sleep the full jittered interval after every probe, so a 100ms --interval with a 30ms probe actually produced a 130ms period — the flag quietly lied about cadence and the effective rate depended on backend latency. The fix subtracts result.Duration from the sleep so the loop's period matches --interval. Probes that overrun the interval clamp the sleep to zero and fire immediately without trying to catch up on missed cycles, so a slow backend doesn't get flooded with back-to-back retries exactly when it's already struggling.
11 KiB
11 KiB