package
0.0.0-20241004052545-caa2fb9b60ae
Repository: https://github.com/grafana/mimir.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# Functions

ContextWithEmptyDetails returns a context with empty QueryDetails.
No description provided by the author
DecodeInstantQueryTimeParams encapsulates Prometheus instant query time param parsing, emulating the logic in prometheus/prometheus/web/api/v1#API.query.
DecodeLabelsQueryTimeParams encapsulates Prometheus label names and label values query time param parsing, emulating the logic in prometheus/prometheus/web/api/v1#API.labelNames and v1#API.labelValues.
DecodeRangeQueryTimeParams encapsulates Prometheus instant query time param parsing, emulating the logic in prometheus/prometheus/web/api/v1#API.query_range.
No description provided by the author
EncodeCachedHTTPResponse encodes the input http.Response into CachedHTTPResponse.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
MergeMetricsQueryMiddlewares produces a middleware that applies multiple middleware in turn; ie Merge(f,g,h).Wrap(handler) == f.Wrap(g.Wrap(h.Wrap(handler))).
MergeTripperwares produces a tripperware that applies multiple tripperware in turn; ie Merge(f,g,h).Wrap(tripper) == f(g(h(tripper))).
No description provided by the author
No description provided by the author
No description provided by the author
NewLimitedParallelismRoundTripper creates a new roundtripper that enforces MaxQueryParallelism to the `next` roundtripper across `middlewares`.
No description provided by the author
No description provided by the author
No description provided by the author
NewQueryDetailsStartEndRoundTripper parses "start" and "end" parameters from the query and sets same fields in the QueryDetails in the context.
No description provided by the author
NewShardedQueryable makes a new shardedQueryable.
NewTripperware returns a Tripperware configured with middlewares to limit, align, split, retry and cache requests.
ParseRemoteReadRequestValuesWithoutConsumingBody parses a remote read request without consuming the body.
QueryDetailsFromContext gets the QueryDetails out of the Context.
ResponseToSamples is needed to map back from api response to the underlying series data.

# Variables

No description provided by the author
No description provided by the author
ErrUnsupportedRequest is intended to be used with CacheKeyGenerator.

# Structs

AnnotationAccumulator collects annotations returned by sharded queries.
No description provided by the author
CachedHTTPHeader holds a HTTP header.
CachedHTTPResponse holds a generic HTTP response in the query results cache.
No description provided by the author
Config for query_range middleware chain.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
PrometheusResponseExtractor helps extracting specific info from Query Response.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ResultsCacheConfig is the config for the results cache.
No description provided by the author

# Interfaces

CacheKeyGenerator generates cache keys.
Codec is used to encode/decode query requests and responses so they can be passed down to middlewares.
Extractor is used by the cache to extract a subset of a response from a cache entry.
LabelsQueryHandler is like http.Handler, but specifically for Prometheus label names and values calls.
LabelsQueryRequest represents a label names or values query request that can be process by middlewares.
Limits allows us to specify per-tenant runtime limits on the behavior of the query handling code.
Merger is used by middlewares making multiple requests to merge back all responses into a single one.
MetricsQueryHandler is like http.Handler, but specifically for Prometheus query and query_range calls.
MetricsQueryMiddleware is a higher order MetricsQueryHandler.
MetricsQueryRequest represents an instant or query range request that can be process by middlewares.
Response represents a query range response.

# Type aliases

No description provided by the author
HandlerFunc is like http.HandlerFunc, but for MetricsQueryHandler.
LabelsHandlerFunc is like http.HandlerFunc, but for LabelsQueryHandler.
MetricsQueryMiddlewareFunc is like http.HandlerFunc, but for MetricsQueryMiddleware.
RoundTripFunc is to http.RoundTripper what http.HandlerFunc is to http.Handler.
No description provided by the author
Tripperware is a signature for all http client-side middleware.