feat: Add endpoints_per_pool Prometheus metric for hash-based routing#550
Merged
hoffmaen merged 2 commits intocloudfoundry:developfrom Apr 13, 2026
Merged
Conversation
b1tamara
reviewed
Apr 9, 2026
src/code.cloudfoundry.org/gorouter/metrics/compositereporter.go
Outdated
Show resolved
Hide resolved
b1tamara
reviewed
Apr 9, 2026
b1tamara
reviewed
Apr 9, 2026
251199f to
d3b37b3
Compare
Rename DeleteEndpointsPerPool to UncaptureEndpointsPerPool, add metric cleanup on route pruning and LB algorithm changes, and add tests.
43a163a to
0e77f30
Compare
b1tamara
approved these changes
Apr 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Linked with cloudfoundry/docs-running-cf#143
Summary
endpoints_per_poolPrometheus gauge metric with labelsrouteandlb_algorithm, reporting the number of endpoints per route pool for routes using hash-based load balancingMotivation
Hash-based routing distributes requests based on a consistent hash, which can degrade when the instance count for a pool becomes too high. This metric provides visibility into the endpoint count per hash-based routing pool, keeping metric cardinality low by only tracking hash-based routes.
Backward Compatibility
Breaking Change? No
Note on AI usage
Parts of this code and tests were developed with assistance from Claude Code (claude-opus-4-20250514).