Skip to content

Document SQL Server queue length monitoring interval options#8374

Draft
ramonsmits wants to merge 1 commit into
masterfrom
sql-queuelength-monitoring-options
Draft

Document SQL Server queue length monitoring interval options#8374
ramonsmits wants to merge 1 commit into
masterfrom
sql-queuelength-monitoring-options

Conversation

@ramonsmits

@ramonsmits ramonsmits commented Jun 26, 2026

Copy link
Copy Markdown
Member

Draft. Documents the two new SQL Server transport connection-string options introduced in Particular/ServiceControl#5555:

  • QueueLengthQueryDelayInterval — base poll cadence for queue length monitoring (default 1000 ms).
  • QueueLengthQueryMaxDelayInterval — ceiling for the adaptive back-off while every monitored queue is idle (default 10000 ms; set equal to the base to disable).

Added to the SQL section of servicecontrol/transports.md, mirroring how the Azure Service Bus transport already documents QueueLengthQueryDelayInterval.

Adds QueueLengthQueryDelayInterval and QueueLengthQueryMaxDelayInterval
(base cadence + adaptive idle back-off) introduced by Particular/ServiceControl#5555.
The following options tune queue length monitoring (the data behind the throughput graphs) and are available in versions <!-- TODO: confirm first shipping ServiceControl version --> and above:

* `QueueLengthQueryDelayInterval=<value_in_milliseconds>` - The base interval between queue length refresh queries. The default value is 1000 ms, matching the finest monitoring resolution (one data point per second). This is the cadence used whenever any monitored queue has messages.
* `QueueLengthQueryMaxDelayInterval=<value_in_milliseconds>` - The upper bound for the adaptive back-off. While *every* monitored queue is empty the interval ramps from `QueueLengthQueryDelayInterval` up to this value, reducing query load on an idle system; it returns to the base interval as soon as any queue has work. The default value is 10000 ms. Set it equal to `QueueLengthQueryDelayInterval` to disable back-off and poll at a constant cadence.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* `QueueLengthQueryMaxDelayInterval=<value_in_milliseconds>` - The upper bound for the adaptive back-off. While *every* monitored queue is empty the interval ramps from `QueueLengthQueryDelayInterval` up to this value, reducing query load on an idle system; it returns to the base interval as soon as any queue has work. The default value is 10000 ms. Set it equal to `QueueLengthQueryDelayInterval` to disable back-off and poll at a constant cadence.
* `QueueLengthQueryMaxDelayInterval=<value_in_milliseconds>` - The upper bound for the adaptive back-off. While *every* monitored queue is empty, the interval ramps from `QueueLengthQueryDelayInterval` up to this value, reducing query load on an idle system; it returns to the base interval as soon as any queue has messages. The default value is 10000 ms. Set it equal to `QueueLengthQueryDelayInterval` to disable back-off and poll at a constant cadence.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants