Extend the Rack::Attack DRY_RUN mode to allow testing new settings before enforcing them

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

  • Close this issue

In https://gitlab.com/gitlab-com/gl-infra/scalability/-/issues/629 we've created a way to see logs of requests that could potentially be throttled by Rack::Attack but without actually doing so.

In !65334 (closed) we want to update our rate limits, but we have no way of testing the new limits without either disabling the current ones, or enforcing the new ones immediately.

We could extend the GITLAB_THROTTLE_DRY_RUN env variable to also take the configuration (number of requests and duration). If a configuration is specified in the env-var, then we track using that config, while still enforcing the config in the database.

Edited Jul 29, 2025 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading