Throttler multi-metrics: proto changes #92
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Replaced by vitessio#16040
Description
This PR is the first in the series of incremental changes breaking down vitessio#15988 into smaller parts.
We begin by applying the
proto
changes.Notable:
CheckThrottler
gRPC call already exists inv19
and before, and is/was used by the Primary throttler to probe its replicas, and by the replica throttler to notify the Primary about recent checks.CheckThrottlerRequest
andCheckThrottlerResponse
with more fields. We will later makeCheckThrottler
avtctidlclient
command. A check requests identifies by app name, and now also clearly indicates whether multi-metrics are supported/desired (important for backwards compatibility and cross-version interaction), as well as other flags that will be come clearer later on.GetThrottlerStatus
,GetThrottlerStatusRequest
,GetThrottlerStatusResponse
are new calls, and useful for debugging/incident analysis. These return the equivalent of/throttler/status
, but now via gRPC instead of HTTP. Likewise, this will be implemented as avtctldclient
in a followup PR.ThrottlerConfig
now supports:AppCheckedMetrics
- mapping of app->metrics (meaning which metrics the throttler checks on behalf of given app)MetricThresholds
- per metric threshold (different threshold forlag
, forthreads_running
, etc.)See the docs in vitessio#15988 main comment for more.
This PR merges into
planetscale:throttler-multi-metrics-incremental
, which is a Draft PR, and not intomain
.https://github.com/planetscale/vitess/compare/planetscale:vitess:throttler-multi-metrics-incremental...planetscale:vitess:throttler-multi-metrics-incremental-proto?expand=1
Related Issue(s)
vitessio#15988
Checklist
Deployment Notes