Skip to content

Conversation

@maycmlee
Copy link
Contributor

What does this PR do? What is the motivation?

Adds section on how the throttle processor works

Merge instructions

Merge readiness:

  • Ready for merge

For Datadog employees:

Your branch name MUST follow the <name>/<description> convention and include the forward slash (/). Without this format, your pull request will not pass CI, the GitLab pipeline will not run, and you won't get a branch preview. Getting a branch preview makes it easier for us to check any issues with your PR, such as broken links.

If your branch doesn't follow this format, rename it or create a new branch and PR.

[6/5/2025] Merge queue has been disabled on the documentation repo. If you have write access to the repo, the PR has been reviewed by a Documentation team member, and all of the required checks have passed, you can use the Squash and Merge button to merge the PR. If you don't have write access, or you need help, reach out in the #documentation channel in Slack.

Additional notes

@maycmlee maycmlee added the WORK IN PROGRESS No review needed, it's a wip ;) label Nov 17, 2025
@maycmlee maycmlee requested a review from a team as a code owner November 17, 2025 19:44
@github-actions
Copy link
Contributor

Preview links (active after the build_preview check completes)

Modified Files

@github-actions github-actions bot added the Images Images are added/removed with this PR label Nov 18, 2025

{{% observability_pipelines/processors/filter_syntax %}}

## How the throttle processor works
Copy link
Contributor

Choose a reason for hiding this comment

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

Would we normally capitalize Throttle?


## How the throttle processor works

The throttle processor sets a rate limit on the number of logs sent within a specified time window. While similar to the quota processor, the main difference between the throttle and quota is that the quota processor's time window is fixed at 24 hours and cannot be changed, while the throttle processor's time window can be configured. Since the throttle processor's time window is configurable, the processor has a capacity replenishment rate based on the throttling rate and time window you set. See [Capacity replenishment rate](#capacity-replenishment-rate) for more information.
Copy link
Contributor

Choose a reason for hiding this comment

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

Link to quota processor docs on the first mention. Should we capitalize all instances of Quota and Throttle since they are names of a feature? Or do we usually keep lowercase


The throttle processor uses a generic cell rate algorithm, which enables a steady rate of events to pass through. The replenishment rate is based on the settings of your throttle processor and allows a certain number of events to pass through per second. This rate can be calculated as follows:

$$\text"Throttle rate" / \text"Time window (in seconds)"$$
Copy link
Contributor

Choose a reason for hiding this comment

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

In the preview the images of the formulas seems a little broken
Screenshot 2025-11-21 at 2 17 32 PM


### Capacity replenishment rate

The throttle processor uses a generic cell rate algorithm, which enables a steady rate of events to pass through. The replenishment rate is based on the settings of your throttle processor and allows a certain number of events to pass through per second. This rate can be calculated as follows:
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe link to some documentation of what a generic cell rate algorithm is: https://en.wikipedia.org/wiki/Generic_cell_rate_algorithm

Not sure if we use wikipedia in our docs

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

Labels

Images Images are added/removed with this PR WORK IN PROGRESS No review needed, it's a wip ;)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants