Repository navigation
Conversation
`SplitHistogram` collects explicitly registered `SplitHistogramShard` handles into a standard classic histogram while observations use per-shard relaxed atomics. The parent retains shard ownership, and cloned shard handles share their underlying counters. The implementation reuses `HistogramSnapshot` and the existing histogram encoder, preserving standard text and protobuf rendering. Caller-managed thread-local storage is documented without adding TLS policy to the metrics backend. Both types are available from `foundations-metrics` and its backend-gated `foundations` facade. Exemplar support remains deferred because sharing exemplar storage across explicit shards requires additional ownership and conflict semantics.
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.
SplitHistogramcollects explicitly registeredSplitHistogramShardhandles into one standard classic histogram. Each shard records through relaxed atomics without taking a parent-wide observation lock, while the parent retains ownership for collection.The implementation reuses
HistogramSnapshotand the existing histogram encoding path, preserving text and protobuf rendering. Shard placement remains caller-controlled, including the documented option of caller-managed thread-local storage.Both types are exported from
foundations-metricsand the backend-gatedfoundationsfacade.Exemplar support remains deferred because sharing exemplar storage across explicit shards requires additional ownership and conflict semantics.