Bounded, explicitly scheduled depth collection for queue observations
(M98f).
Counting has backend cost, so it is its own opt-in: a diagnostic read never
counts. One cycle runs at bootstrap and then one per intervalMs; cycles
never overlap. A count that has not settled within timeoutMs is reported
as timed out but keeps its concurrency slot until it actually settles, so a
hung backend cannot accumulate count calls. Only approved job names this
instance has registered a processor for are counted, and only on adapters
that can count (memory, and redis with a counting client); RabbitMQ and SQS
report depths as unavailable, never as zero.
Bounded, explicitly scheduled depth collection for queue observations (M98f).
Counting has backend cost, so it is its own opt-in: a diagnostic read never counts. One cycle runs at bootstrap and then one per
intervalMs; cycles never overlap. A count that has not settled withintimeoutMsis reported as timed out but keeps its concurrency slot until it actually settles, so a hung backend cannot accumulate count calls. Only approved job names this instance has registered a processor for are counted, and only on adapters that can count (memory, and redis with a counting client); RabbitMQ and SQS report depths asunavailable, never as zero.Since
0.8.0