Documentation ¶
Index ¶
- Constants
- Variables
- func BodyBuffer(res *http.Response, logger log.Logger) ([]byte, error)
- func BodyBufferFromHTTPGRPCResponse(res *httpgrpc.HTTPResponse, logger log.Logger) ([]byte, error)
- func EncodeTime(t int64) string
- func MarshalSampleHistogramPairJSON(ptr unsafe.Pointer, stream *jsoniter.Stream)
- func MergeSampleStreams(output map[string]SampleStream, sampleStreams []SampleStream)
- func NewRoundTripper(next http.RoundTripper, codec Codec, headers []string, ...) http.RoundTripper
- func PrometheusResponseQueryableSamplesStatsPerStepJsoniterDecode(ptr unsafe.Pointer, iter *jsoniter.Iterator)
- func PrometheusResponseQueryableSamplesStatsPerStepJsoniterEncode(ptr unsafe.Pointer, stream *jsoniter.Stream)
- func SubQueryStepSizeCheck(query string, defaultSubQueryInterval time.Duration, maxStep int64) error
- func TestQueryShardQuery(t *testing.T, instantQueryCodec Codec, shardedPrometheusCodec Codec)
- func UnmarshalSampleHistogramPairJSON(ptr unsafe.Pointer, iter *jsoniter.Iterator)
- type Buffer
- type Codec
- type Handler
- type HandlerFunc
- type HistogramBucket
- func (*HistogramBucket) Descriptor() ([]byte, []int)
- func (this *HistogramBucket) Equal(that interface{}) bool
- func (m *HistogramBucket) GetBoundaries() int32
- func (m *HistogramBucket) GetCount() float64
- func (m *HistogramBucket) GetLower() float64
- func (m *HistogramBucket) GetUpper() float64
- func (this *HistogramBucket) GoString() string
- func (m *HistogramBucket) Marshal() (dAtA []byte, err error)
- func (m *HistogramBucket) MarshalTo(dAtA []byte) (int, error)
- func (m *HistogramBucket) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*HistogramBucket) ProtoMessage()
- func (m *HistogramBucket) Reset()
- func (m *HistogramBucket) Size() (n int)
- func (this *HistogramBucket) String() string
- func (m *HistogramBucket) Unmarshal(dAtA []byte) error
- func (m *HistogramBucket) XXX_DiscardUnknown()
- func (m *HistogramBucket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *HistogramBucket) XXX_Merge(src proto.Message)
- func (m *HistogramBucket) XXX_Size() int
- func (m *HistogramBucket) XXX_Unmarshal(b []byte) error
- type InstrumentMiddlewareMetrics
- type Limits
- type Merger
- type Middleware
- type MiddlewareFunc
- type NoopCollector
- type PrometheusRequestHeader
- func (*PrometheusRequestHeader) Descriptor() ([]byte, []int)
- func (this *PrometheusRequestHeader) Equal(that interface{}) bool
- func (m *PrometheusRequestHeader) GetName() string
- func (m *PrometheusRequestHeader) GetValues() []string
- func (this *PrometheusRequestHeader) GoString() string
- func (m *PrometheusRequestHeader) Marshal() (dAtA []byte, err error)
- func (m *PrometheusRequestHeader) MarshalTo(dAtA []byte) (int, error)
- func (m *PrometheusRequestHeader) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PrometheusRequestHeader) ProtoMessage()
- func (m *PrometheusRequestHeader) Reset()
- func (m *PrometheusRequestHeader) Size() (n int)
- func (this *PrometheusRequestHeader) String() string
- func (m *PrometheusRequestHeader) Unmarshal(dAtA []byte) error
- func (m *PrometheusRequestHeader) XXX_DiscardUnknown()
- func (m *PrometheusRequestHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PrometheusRequestHeader) XXX_Merge(src proto.Message)
- func (m *PrometheusRequestHeader) XXX_Size() int
- func (m *PrometheusRequestHeader) XXX_Unmarshal(b []byte) error
- type PrometheusResponseHeader
- func (*PrometheusResponseHeader) Descriptor() ([]byte, []int)
- func (this *PrometheusResponseHeader) Equal(that interface{}) bool
- func (m *PrometheusResponseHeader) GetName() string
- func (m *PrometheusResponseHeader) GetValues() []string
- func (this *PrometheusResponseHeader) GoString() string
- func (m *PrometheusResponseHeader) Marshal() (dAtA []byte, err error)
- func (m *PrometheusResponseHeader) MarshalTo(dAtA []byte) (int, error)
- func (m *PrometheusResponseHeader) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PrometheusResponseHeader) ProtoMessage()
- func (m *PrometheusResponseHeader) Reset()
- func (m *PrometheusResponseHeader) Size() (n int)
- func (this *PrometheusResponseHeader) String() string
- func (m *PrometheusResponseHeader) Unmarshal(dAtA []byte) error
- func (m *PrometheusResponseHeader) XXX_DiscardUnknown()
- func (m *PrometheusResponseHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PrometheusResponseHeader) XXX_Merge(src proto.Message)
- func (m *PrometheusResponseHeader) XXX_Size() int
- func (m *PrometheusResponseHeader) XXX_Unmarshal(b []byte) error
- type PrometheusResponseQueryableSamplesStatsPerStep
- func (*PrometheusResponseQueryableSamplesStatsPerStep) Descriptor() ([]byte, []int)
- func (this *PrometheusResponseQueryableSamplesStatsPerStep) Equal(that interface{}) bool
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) GetTimestampMs() int64
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) GetValue() int64
- func (this *PrometheusResponseQueryableSamplesStatsPerStep) GoString() string
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) Marshal() (dAtA []byte, err error)
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) MarshalTo(dAtA []byte) (int, error)
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PrometheusResponseQueryableSamplesStatsPerStep) ProtoMessage()
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) Reset()
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) Size() (n int)
- func (this *PrometheusResponseQueryableSamplesStatsPerStep) String() string
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) Unmarshal(dAtA []byte) error
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_DiscardUnknown()
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Merge(src proto.Message)
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Size() int
- func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Unmarshal(b []byte) error
- type PrometheusResponseSamplesStats
- func (*PrometheusResponseSamplesStats) Descriptor() ([]byte, []int)
- func (this *PrometheusResponseSamplesStats) Equal(that interface{}) bool
- func (m *PrometheusResponseSamplesStats) GetTotalQueryableSamples() int64
- func (m *PrometheusResponseSamplesStats) GetTotalQueryableSamplesPerStep() []*PrometheusResponseQueryableSamplesStatsPerStep
- func (this *PrometheusResponseSamplesStats) GoString() string
- func (m *PrometheusResponseSamplesStats) Marshal() (dAtA []byte, err error)
- func (m *PrometheusResponseSamplesStats) MarshalTo(dAtA []byte) (int, error)
- func (m *PrometheusResponseSamplesStats) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PrometheusResponseSamplesStats) ProtoMessage()
- func (m *PrometheusResponseSamplesStats) Reset()
- func (m *PrometheusResponseSamplesStats) Size() (n int)
- func (this *PrometheusResponseSamplesStats) String() string
- func (m *PrometheusResponseSamplesStats) Unmarshal(dAtA []byte) error
- func (m *PrometheusResponseSamplesStats) XXX_DiscardUnknown()
- func (m *PrometheusResponseSamplesStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PrometheusResponseSamplesStats) XXX_Merge(src proto.Message)
- func (m *PrometheusResponseSamplesStats) XXX_Size() int
- func (m *PrometheusResponseSamplesStats) XXX_Unmarshal(b []byte) error
- type PrometheusResponseStats
- func (*PrometheusResponseStats) Descriptor() ([]byte, []int)
- func (this *PrometheusResponseStats) Equal(that interface{}) bool
- func (m *PrometheusResponseStats) GetSamples() *PrometheusResponseSamplesStats
- func (this *PrometheusResponseStats) GoString() string
- func (m *PrometheusResponseStats) Marshal() (dAtA []byte, err error)
- func (m *PrometheusResponseStats) MarshalTo(dAtA []byte) (int, error)
- func (m *PrometheusResponseStats) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PrometheusResponseStats) ProtoMessage()
- func (m *PrometheusResponseStats) Reset()
- func (m *PrometheusResponseStats) Size() (n int)
- func (this *PrometheusResponseStats) String() string
- func (m *PrometheusResponseStats) Unmarshal(dAtA []byte) error
- func (m *PrometheusResponseStats) XXX_DiscardUnknown()
- func (m *PrometheusResponseStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PrometheusResponseStats) XXX_Merge(src proto.Message)
- func (m *PrometheusResponseStats) XXX_Size() int
- func (m *PrometheusResponseStats) XXX_Unmarshal(b []byte) error
- type Request
- type RequestResponse
- type Response
- type RoundTripFunc
- type SampleHistogram
- func (*SampleHistogram) Descriptor() ([]byte, []int)
- func (this *SampleHistogram) Equal(that interface{}) bool
- func (m *SampleHistogram) GetBuckets() []*HistogramBucket
- func (m *SampleHistogram) GetCount() float64
- func (m *SampleHistogram) GetSum() float64
- func (this *SampleHistogram) GoString() string
- func (m *SampleHistogram) Marshal() (dAtA []byte, err error)
- func (m *SampleHistogram) MarshalTo(dAtA []byte) (int, error)
- func (m *SampleHistogram) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*SampleHistogram) ProtoMessage()
- func (m *SampleHistogram) Reset()
- func (m *SampleHistogram) Size() (n int)
- func (this *SampleHistogram) String() string
- func (m *SampleHistogram) Unmarshal(dAtA []byte) error
- func (m *SampleHistogram) XXX_DiscardUnknown()
- func (m *SampleHistogram) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *SampleHistogram) XXX_Merge(src proto.Message)
- func (m *SampleHistogram) XXX_Size() int
- func (m *SampleHistogram) XXX_Unmarshal(b []byte) error
- type SampleHistogramPair
- func (*SampleHistogramPair) Descriptor() ([]byte, []int)
- func (this *SampleHistogramPair) Equal(that interface{}) bool
- func (m *SampleHistogramPair) GetHistogram() SampleHistogram
- func (m *SampleHistogramPair) GetTimestampMs() int64
- func (this *SampleHistogramPair) GoString() string
- func (m *SampleHistogramPair) Marshal() (dAtA []byte, err error)
- func (m *SampleHistogramPair) MarshalTo(dAtA []byte) (int, error)
- func (m *SampleHistogramPair) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*SampleHistogramPair) ProtoMessage()
- func (m *SampleHistogramPair) Reset()
- func (m *SampleHistogramPair) Size() (n int)
- func (this *SampleHistogramPair) String() string
- func (m *SampleHistogramPair) Unmarshal(dAtA []byte) error
- func (m *SampleHistogramPair) XXX_DiscardUnknown()
- func (m *SampleHistogramPair) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *SampleHistogramPair) XXX_Merge(src proto.Message)
- func (m *SampleHistogramPair) XXX_Size() int
- func (m *SampleHistogramPair) XXX_Unmarshal(b []byte) error
- type SampleStream
- func (*SampleStream) Descriptor() ([]byte, []int)
- func (this *SampleStream) Equal(that interface{}) bool
- func (m *SampleStream) GetHistograms() []SampleHistogramPair
- func (m *SampleStream) GetSamples() []cortexpb.Sample
- func (this *SampleStream) GoString() string
- func (m *SampleStream) Marshal() (dAtA []byte, err error)
- func (m *SampleStream) MarshalTo(dAtA []byte) (int, error)
- func (m *SampleStream) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*SampleStream) ProtoMessage()
- func (m *SampleStream) Reset()
- func (m *SampleStream) Size() (n int)
- func (this *SampleStream) String() string
- func (m *SampleStream) Unmarshal(dAtA []byte) error
- func (m *SampleStream) XXX_DiscardUnknown()
- func (m *SampleStream) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *SampleStream) XXX_Merge(src proto.Message)
- func (m *SampleStream) XXX_Size() int
- func (m *SampleStream) XXX_Unmarshal(b []byte) error
- type Tripperware
Constants ¶
const (
MaxStep = 11000
)
const QueryRejectErrorMessage = "This query does not perform well and has been rejected by the service operator."
Variables ¶
var ( ErrInvalidLengthQuery = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowQuery = fmt.Errorf("proto: integer overflow") )
var (
ErrSubQueryStepTooSmall = "exceeded maximum resolution of %d points per timeseries in subquery. Try increasing the step size of your subquery"
)
Functions ¶
func BodyBufferFromHTTPGRPCResponse ¶ added in v1.16.0
func EncodeTime ¶
func MarshalSampleHistogramPairJSON ¶ added in v1.18.0
Adapted from https://github.com/prometheus/client_golang/blob/4b158abea9470f75b6f07460cdc2189b91914562/api/prometheus/v1/api.go#L137.
func MergeSampleStreams ¶
func MergeSampleStreams(output map[string]SampleStream, sampleStreams []SampleStream)
MergeSampleStreams deduplicates sample streams using a map.
func NewRoundTripper ¶
func NewRoundTripper(next http.RoundTripper, codec Codec, headers []string, middlewares ...Middleware) http.RoundTripper
NewRoundTripper merges a set of middlewares into an handler, then inject it into the `next` roundtripper using the codec to translate requests and responses.
func SubQueryStepSizeCheck ¶ added in v1.16.0
func SubQueryStepSizeCheck(query string, defaultSubQueryInterval time.Duration, maxStep int64) error
SubQueryStepSizeCheck ensures the query doesn't contain too small step size in subqueries.
func TestQueryShardQuery ¶
func UnmarshalSampleHistogramPairJSON ¶ added in v1.18.0
Adapted from https://github.com/prometheus/client_golang/blob/4b158abea9470f75b6f07460cdc2189b91914562/api/prometheus/v1/api.go#L84.
Types ¶
type Buffer ¶
type Buffer interface {
Bytes() []byte
}
Buffer can be used to read a response body. This allows to avoid reading the body multiple times from the `http.Response.Body`.
type Codec ¶
type Codec interface { Merger // DecodeRequest decodes a Request from an http request. DecodeRequest(_ context.Context, request *http.Request, forwardHeaders []string) (Request, error) // DecodeResponse decodes a Response from an http response. // The original request is also passed as a parameter this is useful for implementation that needs the request // to merge result or build the result correctly. DecodeResponse(context.Context, *http.Response, Request) (Response, error) // EncodeRequest encodes a Request into an http request. EncodeRequest(context.Context, Request) (*http.Request, error) // EncodeResponse encodes a Response into an http response. EncodeResponse(context.Context, Response) (*http.Response, error) }
Codec is used to encode/decode query range requests and responses so they can be passed down to middlewares.
type HandlerFunc ¶
HandlerFunc is like http.HandlerFunc, but for Handler.
type HistogramBucket ¶ added in v1.18.0
type HistogramBucket struct { Boundaries int32 `protobuf:"varint,1,opt,name=boundaries,proto3" json:"boundaries,omitempty"` Lower float64 `protobuf:"fixed64,2,opt,name=lower,proto3" json:"lower,omitempty"` Upper float64 `protobuf:"fixed64,3,opt,name=upper,proto3" json:"upper,omitempty"` Count float64 `protobuf:"fixed64,4,opt,name=count,proto3" json:"count,omitempty"` }
func (*HistogramBucket) Descriptor ¶ added in v1.18.0
func (*HistogramBucket) Descriptor() ([]byte, []int)
func (*HistogramBucket) Equal ¶ added in v1.18.0
func (this *HistogramBucket) Equal(that interface{}) bool
func (*HistogramBucket) GetBoundaries ¶ added in v1.18.0
func (m *HistogramBucket) GetBoundaries() int32
func (*HistogramBucket) GetCount ¶ added in v1.18.0
func (m *HistogramBucket) GetCount() float64
func (*HistogramBucket) GetLower ¶ added in v1.18.0
func (m *HistogramBucket) GetLower() float64
func (*HistogramBucket) GetUpper ¶ added in v1.18.0
func (m *HistogramBucket) GetUpper() float64
func (*HistogramBucket) GoString ¶ added in v1.18.0
func (this *HistogramBucket) GoString() string
func (*HistogramBucket) Marshal ¶ added in v1.18.0
func (m *HistogramBucket) Marshal() (dAtA []byte, err error)
func (*HistogramBucket) MarshalTo ¶ added in v1.18.0
func (m *HistogramBucket) MarshalTo(dAtA []byte) (int, error)
func (*HistogramBucket) MarshalToSizedBuffer ¶ added in v1.18.0
func (m *HistogramBucket) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*HistogramBucket) ProtoMessage ¶ added in v1.18.0
func (*HistogramBucket) ProtoMessage()
func (*HistogramBucket) Reset ¶ added in v1.18.0
func (m *HistogramBucket) Reset()
func (*HistogramBucket) Size ¶ added in v1.18.0
func (m *HistogramBucket) Size() (n int)
func (*HistogramBucket) String ¶ added in v1.18.0
func (this *HistogramBucket) String() string
func (*HistogramBucket) Unmarshal ¶ added in v1.18.0
func (m *HistogramBucket) Unmarshal(dAtA []byte) error
func (*HistogramBucket) XXX_DiscardUnknown ¶ added in v1.18.0
func (m *HistogramBucket) XXX_DiscardUnknown()
func (*HistogramBucket) XXX_Marshal ¶ added in v1.18.0
func (m *HistogramBucket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*HistogramBucket) XXX_Merge ¶ added in v1.18.0
func (m *HistogramBucket) XXX_Merge(src proto.Message)
func (*HistogramBucket) XXX_Size ¶ added in v1.18.0
func (m *HistogramBucket) XXX_Size() int
func (*HistogramBucket) XXX_Unmarshal ¶ added in v1.18.0
func (m *HistogramBucket) XXX_Unmarshal(b []byte) error
type InstrumentMiddlewareMetrics ¶
type InstrumentMiddlewareMetrics struct {
// contains filtered or unexported fields
}
InstrumentMiddlewareMetrics holds the metrics tracked by InstrumentMiddleware.
func NewInstrumentMiddlewareMetrics ¶
func NewInstrumentMiddlewareMetrics(registerer prometheus.Registerer) *InstrumentMiddlewareMetrics
NewInstrumentMiddlewareMetrics makes a new InstrumentMiddlewareMetrics.
type Limits ¶
type Limits interface { // MaxQueryLookback returns the max lookback period of queries. MaxQueryLookback(userID string) time.Duration // MaxQueryLength returns the limit of the length (in time) of a query. MaxQueryLength(string) time.Duration // MaxQueryParallelism returns the limit to the number of split queries the // frontend will process in parallel. MaxQueryParallelism(string) int // MaxCacheFreshness returns the period after which results are cacheable, // to prevent caching of very recent results. MaxCacheFreshness(string) time.Duration // QueryVerticalShardSize returns the maximum number of queriers that can handle requests for this user. QueryVerticalShardSize(userID string) int // QueryPriority returns the query priority config for the tenant, including different priorities and their attributes. QueryPriority(userID string) validation.QueryPriority QueryRejection(userID string) validation.QueryRejection }
Limits allows us to specify per-tenant runtime limits on the behavior of the query handling code.
type Merger ¶
type Merger interface { // MergeResponse merges responses from multiple requests into a single Response MergeResponse(context.Context, Request, ...Response) (Response, error) }
Merger is used by middlewares making multiple requests to merge back all responses into a single one.
type Middleware ¶
Middleware is a higher order Handler.
func InstrumentMiddleware ¶
func InstrumentMiddleware(name string, metrics *InstrumentMiddlewareMetrics) Middleware
InstrumentMiddleware can be inserted into the middleware chain to expose timing information.
func MergeMiddlewares ¶
func MergeMiddlewares(middleware ...Middleware) Middleware
MergeMiddlewares produces a middleware that applies multiple middleware in turn; ie Merge(f,g,h).Wrap(handler) == f.Wrap(g.Wrap(h.Wrap(handler)))
func ShardByMiddleware ¶
func ShardByMiddleware(logger log.Logger, limits Limits, merger Merger, queryAnalyzer querysharding.Analyzer) Middleware
type MiddlewareFunc ¶
MiddlewareFunc is like http.HandlerFunc, but for Middleware.
func (MiddlewareFunc) Wrap ¶
func (q MiddlewareFunc) Wrap(h Handler) Handler
Wrap implements Middleware.
type NoopCollector ¶
type NoopCollector struct{}
NoopCollector is a noop collector that can be used as placeholder when no metric should tracked by the instrumentation.
func (*NoopCollector) Register ¶
func (c *NoopCollector) Register()
Register implements instrument.Collector.
type PrometheusRequestHeader ¶
type PrometheusRequestHeader struct { Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"-"` Values []string `protobuf:"bytes,2,rep,name=Values,proto3" json:"-"` }
func (*PrometheusRequestHeader) Descriptor ¶
func (*PrometheusRequestHeader) Descriptor() ([]byte, []int)
func (*PrometheusRequestHeader) Equal ¶
func (this *PrometheusRequestHeader) Equal(that interface{}) bool
func (*PrometheusRequestHeader) GetName ¶
func (m *PrometheusRequestHeader) GetName() string
func (*PrometheusRequestHeader) GetValues ¶
func (m *PrometheusRequestHeader) GetValues() []string
func (*PrometheusRequestHeader) GoString ¶
func (this *PrometheusRequestHeader) GoString() string
func (*PrometheusRequestHeader) Marshal ¶
func (m *PrometheusRequestHeader) Marshal() (dAtA []byte, err error)
func (*PrometheusRequestHeader) MarshalTo ¶
func (m *PrometheusRequestHeader) MarshalTo(dAtA []byte) (int, error)
func (*PrometheusRequestHeader) MarshalToSizedBuffer ¶
func (m *PrometheusRequestHeader) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PrometheusRequestHeader) ProtoMessage ¶
func (*PrometheusRequestHeader) ProtoMessage()
func (*PrometheusRequestHeader) Reset ¶
func (m *PrometheusRequestHeader) Reset()
func (*PrometheusRequestHeader) Size ¶
func (m *PrometheusRequestHeader) Size() (n int)
func (*PrometheusRequestHeader) String ¶
func (this *PrometheusRequestHeader) String() string
func (*PrometheusRequestHeader) Unmarshal ¶
func (m *PrometheusRequestHeader) Unmarshal(dAtA []byte) error
func (*PrometheusRequestHeader) XXX_DiscardUnknown ¶
func (m *PrometheusRequestHeader) XXX_DiscardUnknown()
func (*PrometheusRequestHeader) XXX_Marshal ¶
func (m *PrometheusRequestHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PrometheusRequestHeader) XXX_Merge ¶
func (m *PrometheusRequestHeader) XXX_Merge(src proto.Message)
func (*PrometheusRequestHeader) XXX_Size ¶
func (m *PrometheusRequestHeader) XXX_Size() int
func (*PrometheusRequestHeader) XXX_Unmarshal ¶
func (m *PrometheusRequestHeader) XXX_Unmarshal(b []byte) error
type PrometheusResponseHeader ¶
type PrometheusResponseHeader struct { Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"-"` Values []string `protobuf:"bytes,2,rep,name=Values,proto3" json:"-"` }
func (*PrometheusResponseHeader) Descriptor ¶
func (*PrometheusResponseHeader) Descriptor() ([]byte, []int)
func (*PrometheusResponseHeader) Equal ¶
func (this *PrometheusResponseHeader) Equal(that interface{}) bool
func (*PrometheusResponseHeader) GetName ¶
func (m *PrometheusResponseHeader) GetName() string
func (*PrometheusResponseHeader) GetValues ¶
func (m *PrometheusResponseHeader) GetValues() []string
func (*PrometheusResponseHeader) GoString ¶
func (this *PrometheusResponseHeader) GoString() string
func (*PrometheusResponseHeader) Marshal ¶
func (m *PrometheusResponseHeader) Marshal() (dAtA []byte, err error)
func (*PrometheusResponseHeader) MarshalTo ¶
func (m *PrometheusResponseHeader) MarshalTo(dAtA []byte) (int, error)
func (*PrometheusResponseHeader) MarshalToSizedBuffer ¶
func (m *PrometheusResponseHeader) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PrometheusResponseHeader) ProtoMessage ¶
func (*PrometheusResponseHeader) ProtoMessage()
func (*PrometheusResponseHeader) Reset ¶
func (m *PrometheusResponseHeader) Reset()
func (*PrometheusResponseHeader) Size ¶
func (m *PrometheusResponseHeader) Size() (n int)
func (*PrometheusResponseHeader) String ¶
func (this *PrometheusResponseHeader) String() string
func (*PrometheusResponseHeader) Unmarshal ¶
func (m *PrometheusResponseHeader) Unmarshal(dAtA []byte) error
func (*PrometheusResponseHeader) XXX_DiscardUnknown ¶
func (m *PrometheusResponseHeader) XXX_DiscardUnknown()
func (*PrometheusResponseHeader) XXX_Marshal ¶
func (m *PrometheusResponseHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PrometheusResponseHeader) XXX_Merge ¶
func (m *PrometheusResponseHeader) XXX_Merge(src proto.Message)
func (*PrometheusResponseHeader) XXX_Size ¶
func (m *PrometheusResponseHeader) XXX_Size() int
func (*PrometheusResponseHeader) XXX_Unmarshal ¶
func (m *PrometheusResponseHeader) XXX_Unmarshal(b []byte) error
type PrometheusResponseQueryableSamplesStatsPerStep ¶
type PrometheusResponseQueryableSamplesStatsPerStep struct { Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` TimestampMs int64 `protobuf:"varint,2,opt,name=timestamp_ms,json=timestampMs,proto3" json:"timestamp_ms,omitempty"` }
func (*PrometheusResponseQueryableSamplesStatsPerStep) Descriptor ¶
func (*PrometheusResponseQueryableSamplesStatsPerStep) Descriptor() ([]byte, []int)
func (*PrometheusResponseQueryableSamplesStatsPerStep) Equal ¶
func (this *PrometheusResponseQueryableSamplesStatsPerStep) Equal(that interface{}) bool
func (*PrometheusResponseQueryableSamplesStatsPerStep) GetTimestampMs ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) GetTimestampMs() int64
func (*PrometheusResponseQueryableSamplesStatsPerStep) GetValue ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) GetValue() int64
func (*PrometheusResponseQueryableSamplesStatsPerStep) GoString ¶
func (this *PrometheusResponseQueryableSamplesStatsPerStep) GoString() string
func (*PrometheusResponseQueryableSamplesStatsPerStep) Marshal ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) Marshal() (dAtA []byte, err error)
func (*PrometheusResponseQueryableSamplesStatsPerStep) MarshalTo ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) MarshalTo(dAtA []byte) (int, error)
func (*PrometheusResponseQueryableSamplesStatsPerStep) MarshalToSizedBuffer ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PrometheusResponseQueryableSamplesStatsPerStep) ProtoMessage ¶
func (*PrometheusResponseQueryableSamplesStatsPerStep) ProtoMessage()
func (*PrometheusResponseQueryableSamplesStatsPerStep) Reset ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) Reset()
func (*PrometheusResponseQueryableSamplesStatsPerStep) Size ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) Size() (n int)
func (*PrometheusResponseQueryableSamplesStatsPerStep) String ¶
func (this *PrometheusResponseQueryableSamplesStatsPerStep) String() string
func (*PrometheusResponseQueryableSamplesStatsPerStep) Unmarshal ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) Unmarshal(dAtA []byte) error
func (*PrometheusResponseQueryableSamplesStatsPerStep) XXX_DiscardUnknown ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_DiscardUnknown()
func (*PrometheusResponseQueryableSamplesStatsPerStep) XXX_Marshal ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PrometheusResponseQueryableSamplesStatsPerStep) XXX_Merge ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Merge(src proto.Message)
func (*PrometheusResponseQueryableSamplesStatsPerStep) XXX_Size ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Size() int
func (*PrometheusResponseQueryableSamplesStatsPerStep) XXX_Unmarshal ¶
func (m *PrometheusResponseQueryableSamplesStatsPerStep) XXX_Unmarshal(b []byte) error
type PrometheusResponseSamplesStats ¶
type PrometheusResponseSamplesStats struct { TotalQueryableSamples int64 `protobuf:"varint,1,opt,name=totalQueryableSamples,proto3" json:"totalQueryableSamples"` TotalQueryableSamplesPerStep []*PrometheusResponseQueryableSamplesStatsPerStep `protobuf:"bytes,2,rep,name=totalQueryableSamplesPerStep,proto3" json:"totalQueryableSamplesPerStep"` }
func (*PrometheusResponseSamplesStats) Descriptor ¶
func (*PrometheusResponseSamplesStats) Descriptor() ([]byte, []int)
func (*PrometheusResponseSamplesStats) Equal ¶
func (this *PrometheusResponseSamplesStats) Equal(that interface{}) bool
func (*PrometheusResponseSamplesStats) GetTotalQueryableSamples ¶
func (m *PrometheusResponseSamplesStats) GetTotalQueryableSamples() int64
func (*PrometheusResponseSamplesStats) GetTotalQueryableSamplesPerStep ¶
func (m *PrometheusResponseSamplesStats) GetTotalQueryableSamplesPerStep() []*PrometheusResponseQueryableSamplesStatsPerStep
func (*PrometheusResponseSamplesStats) GoString ¶
func (this *PrometheusResponseSamplesStats) GoString() string
func (*PrometheusResponseSamplesStats) Marshal ¶
func (m *PrometheusResponseSamplesStats) Marshal() (dAtA []byte, err error)
func (*PrometheusResponseSamplesStats) MarshalTo ¶
func (m *PrometheusResponseSamplesStats) MarshalTo(dAtA []byte) (int, error)
func (*PrometheusResponseSamplesStats) MarshalToSizedBuffer ¶
func (m *PrometheusResponseSamplesStats) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PrometheusResponseSamplesStats) ProtoMessage ¶
func (*PrometheusResponseSamplesStats) ProtoMessage()
func (*PrometheusResponseSamplesStats) Reset ¶
func (m *PrometheusResponseSamplesStats) Reset()
func (*PrometheusResponseSamplesStats) Size ¶
func (m *PrometheusResponseSamplesStats) Size() (n int)
func (*PrometheusResponseSamplesStats) String ¶
func (this *PrometheusResponseSamplesStats) String() string
func (*PrometheusResponseSamplesStats) Unmarshal ¶
func (m *PrometheusResponseSamplesStats) Unmarshal(dAtA []byte) error
func (*PrometheusResponseSamplesStats) XXX_DiscardUnknown ¶
func (m *PrometheusResponseSamplesStats) XXX_DiscardUnknown()
func (*PrometheusResponseSamplesStats) XXX_Marshal ¶
func (m *PrometheusResponseSamplesStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PrometheusResponseSamplesStats) XXX_Merge ¶
func (m *PrometheusResponseSamplesStats) XXX_Merge(src proto.Message)
func (*PrometheusResponseSamplesStats) XXX_Size ¶
func (m *PrometheusResponseSamplesStats) XXX_Size() int
func (*PrometheusResponseSamplesStats) XXX_Unmarshal ¶
func (m *PrometheusResponseSamplesStats) XXX_Unmarshal(b []byte) error
type PrometheusResponseStats ¶
type PrometheusResponseStats struct {
Samples *PrometheusResponseSamplesStats `protobuf:"bytes,1,opt,name=samples,proto3" json:"samples"`
}
func StatsMerge ¶
func StatsMerge(stats map[int64]*PrometheusResponseQueryableSamplesStatsPerStep) *PrometheusResponseStats
func (*PrometheusResponseStats) Descriptor ¶
func (*PrometheusResponseStats) Descriptor() ([]byte, []int)
func (*PrometheusResponseStats) Equal ¶
func (this *PrometheusResponseStats) Equal(that interface{}) bool
func (*PrometheusResponseStats) GetSamples ¶
func (m *PrometheusResponseStats) GetSamples() *PrometheusResponseSamplesStats
func (*PrometheusResponseStats) GoString ¶
func (this *PrometheusResponseStats) GoString() string
func (*PrometheusResponseStats) Marshal ¶
func (m *PrometheusResponseStats) Marshal() (dAtA []byte, err error)
func (*PrometheusResponseStats) MarshalTo ¶
func (m *PrometheusResponseStats) MarshalTo(dAtA []byte) (int, error)
func (*PrometheusResponseStats) MarshalToSizedBuffer ¶
func (m *PrometheusResponseStats) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PrometheusResponseStats) ProtoMessage ¶
func (*PrometheusResponseStats) ProtoMessage()
func (*PrometheusResponseStats) Reset ¶
func (m *PrometheusResponseStats) Reset()
func (*PrometheusResponseStats) Size ¶
func (m *PrometheusResponseStats) Size() (n int)
func (*PrometheusResponseStats) String ¶
func (this *PrometheusResponseStats) String() string
func (*PrometheusResponseStats) Unmarshal ¶
func (m *PrometheusResponseStats) Unmarshal(dAtA []byte) error
func (*PrometheusResponseStats) XXX_DiscardUnknown ¶
func (m *PrometheusResponseStats) XXX_DiscardUnknown()
func (*PrometheusResponseStats) XXX_Marshal ¶
func (m *PrometheusResponseStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PrometheusResponseStats) XXX_Merge ¶
func (m *PrometheusResponseStats) XXX_Merge(src proto.Message)
func (*PrometheusResponseStats) XXX_Size ¶
func (m *PrometheusResponseStats) XXX_Size() int
func (*PrometheusResponseStats) XXX_Unmarshal ¶
func (m *PrometheusResponseStats) XXX_Unmarshal(b []byte) error
type Request ¶
type Request interface { // GetStart returns the start timestamp of the request in milliseconds. GetStart() int64 // GetEnd returns the end timestamp of the request in milliseconds. GetEnd() int64 // GetStep returns the step of the request in milliseconds. GetStep() int64 // GetQuery returns the query of the request. GetQuery() string // WithStartEnd clone the current request with different start and end timestamp. WithStartEnd(startTime int64, endTime int64) Request // WithQuery clone the current request with a different query. WithQuery(string) Request proto.Message // LogToSpan writes information about this request to an OpenTracing span LogToSpan(opentracing.Span) // GetStats returns the stats of the request. GetStats() string // WithStats clones the current `PrometheusRequest` with a new stats. WithStats(stats string) Request }
Request represents a query range request that can be process by middlewares.
type RequestResponse ¶
RequestResponse contains a request response and the respective request that was used.
func DoRequests ¶
func DoRequests(ctx context.Context, downstream Handler, reqs []Request, limits Limits) ([]RequestResponse, error)
DoRequests executes a list of requests in parallel. The limits parameters is used to limit parallelism per single request.
type Response ¶
type Response interface { proto.Message // HTTPHeaders returns the HTTP headers in the response. HTTPHeaders() map[string][]string }
Response represents a query range response.
type RoundTripFunc ¶
RoundTripFunc is to http.RoundTripper what http.HandlerFunc is to http.Handler.
type SampleHistogram ¶ added in v1.18.0
type SampleHistogram struct { Count float64 `protobuf:"fixed64,1,opt,name=count,proto3" json:"count,omitempty"` Sum float64 `protobuf:"fixed64,2,opt,name=sum,proto3" json:"sum,omitempty"` Buckets []*HistogramBucket `protobuf:"bytes,3,rep,name=buckets,proto3" json:"buckets,omitempty"` }
func (*SampleHistogram) Descriptor ¶ added in v1.18.0
func (*SampleHistogram) Descriptor() ([]byte, []int)
func (*SampleHistogram) Equal ¶ added in v1.18.0
func (this *SampleHistogram) Equal(that interface{}) bool
func (*SampleHistogram) GetBuckets ¶ added in v1.18.0
func (m *SampleHistogram) GetBuckets() []*HistogramBucket
func (*SampleHistogram) GetCount ¶ added in v1.18.0
func (m *SampleHistogram) GetCount() float64
func (*SampleHistogram) GetSum ¶ added in v1.18.0
func (m *SampleHistogram) GetSum() float64
func (*SampleHistogram) GoString ¶ added in v1.18.0
func (this *SampleHistogram) GoString() string
func (*SampleHistogram) Marshal ¶ added in v1.18.0
func (m *SampleHistogram) Marshal() (dAtA []byte, err error)
func (*SampleHistogram) MarshalTo ¶ added in v1.18.0
func (m *SampleHistogram) MarshalTo(dAtA []byte) (int, error)
func (*SampleHistogram) MarshalToSizedBuffer ¶ added in v1.18.0
func (m *SampleHistogram) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*SampleHistogram) ProtoMessage ¶ added in v1.18.0
func (*SampleHistogram) ProtoMessage()
func (*SampleHistogram) Reset ¶ added in v1.18.0
func (m *SampleHistogram) Reset()
func (*SampleHistogram) Size ¶ added in v1.18.0
func (m *SampleHistogram) Size() (n int)
func (*SampleHistogram) String ¶ added in v1.18.0
func (this *SampleHistogram) String() string
func (*SampleHistogram) Unmarshal ¶ added in v1.18.0
func (m *SampleHistogram) Unmarshal(dAtA []byte) error
func (*SampleHistogram) XXX_DiscardUnknown ¶ added in v1.18.0
func (m *SampleHistogram) XXX_DiscardUnknown()
func (*SampleHistogram) XXX_Marshal ¶ added in v1.18.0
func (m *SampleHistogram) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*SampleHistogram) XXX_Merge ¶ added in v1.18.0
func (m *SampleHistogram) XXX_Merge(src proto.Message)
func (*SampleHistogram) XXX_Size ¶ added in v1.18.0
func (m *SampleHistogram) XXX_Size() int
func (*SampleHistogram) XXX_Unmarshal ¶ added in v1.18.0
func (m *SampleHistogram) XXX_Unmarshal(b []byte) error
type SampleHistogramPair ¶ added in v1.18.0
type SampleHistogramPair struct { TimestampMs int64 `protobuf:"varint,1,opt,name=timestamp_ms,json=timestampMs,proto3" json:"timestamp_ms,omitempty"` Histogram SampleHistogram `protobuf:"bytes,2,opt,name=histogram,proto3" json:"histogram"` }
func (*SampleHistogramPair) Descriptor ¶ added in v1.18.0
func (*SampleHistogramPair) Descriptor() ([]byte, []int)
func (*SampleHistogramPair) Equal ¶ added in v1.18.0
func (this *SampleHistogramPair) Equal(that interface{}) bool
func (*SampleHistogramPair) GetHistogram ¶ added in v1.18.0
func (m *SampleHistogramPair) GetHistogram() SampleHistogram
func (*SampleHistogramPair) GetTimestampMs ¶ added in v1.18.0
func (m *SampleHistogramPair) GetTimestampMs() int64
func (*SampleHistogramPair) GoString ¶ added in v1.18.0
func (this *SampleHistogramPair) GoString() string
func (*SampleHistogramPair) Marshal ¶ added in v1.18.0
func (m *SampleHistogramPair) Marshal() (dAtA []byte, err error)
func (*SampleHistogramPair) MarshalTo ¶ added in v1.18.0
func (m *SampleHistogramPair) MarshalTo(dAtA []byte) (int, error)
func (*SampleHistogramPair) MarshalToSizedBuffer ¶ added in v1.18.0
func (m *SampleHistogramPair) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*SampleHistogramPair) ProtoMessage ¶ added in v1.18.0
func (*SampleHistogramPair) ProtoMessage()
func (*SampleHistogramPair) Reset ¶ added in v1.18.0
func (m *SampleHistogramPair) Reset()
func (*SampleHistogramPair) Size ¶ added in v1.18.0
func (m *SampleHistogramPair) Size() (n int)
func (*SampleHistogramPair) String ¶ added in v1.18.0
func (this *SampleHistogramPair) String() string
func (*SampleHistogramPair) Unmarshal ¶ added in v1.18.0
func (m *SampleHistogramPair) Unmarshal(dAtA []byte) error
func (*SampleHistogramPair) XXX_DiscardUnknown ¶ added in v1.18.0
func (m *SampleHistogramPair) XXX_DiscardUnknown()
func (*SampleHistogramPair) XXX_Marshal ¶ added in v1.18.0
func (m *SampleHistogramPair) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*SampleHistogramPair) XXX_Merge ¶ added in v1.18.0
func (m *SampleHistogramPair) XXX_Merge(src proto.Message)
func (*SampleHistogramPair) XXX_Size ¶ added in v1.18.0
func (m *SampleHistogramPair) XXX_Size() int
func (*SampleHistogramPair) XXX_Unmarshal ¶ added in v1.18.0
func (m *SampleHistogramPair) XXX_Unmarshal(b []byte) error
type SampleStream ¶
type SampleStream struct { Labels []github_com_cortexproject_cortex_pkg_cortexpb.LabelAdapter `protobuf:"bytes,1,rep,name=labels,proto3,customtype=github.com/cortexproject/cortex/pkg/cortexpb.LabelAdapter" json:"metric"` Samples []cortexpb.Sample `protobuf:"bytes,2,rep,name=samples,proto3" json:"values"` Histograms []SampleHistogramPair `protobuf:"bytes,3,rep,name=histograms,proto3" json:"histograms"` }
func (*SampleStream) Descriptor ¶
func (*SampleStream) Descriptor() ([]byte, []int)
func (*SampleStream) Equal ¶
func (this *SampleStream) Equal(that interface{}) bool
func (*SampleStream) GetHistograms ¶ added in v1.18.0
func (m *SampleStream) GetHistograms() []SampleHistogramPair
func (*SampleStream) GetSamples ¶
func (m *SampleStream) GetSamples() []cortexpb.Sample
func (*SampleStream) GoString ¶
func (this *SampleStream) GoString() string
func (*SampleStream) Marshal ¶
func (m *SampleStream) Marshal() (dAtA []byte, err error)
func (*SampleStream) MarshalToSizedBuffer ¶
func (m *SampleStream) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*SampleStream) ProtoMessage ¶
func (*SampleStream) ProtoMessage()
func (*SampleStream) Reset ¶
func (m *SampleStream) Reset()
func (*SampleStream) Size ¶
func (m *SampleStream) Size() (n int)
func (*SampleStream) String ¶
func (this *SampleStream) String() string
func (*SampleStream) Unmarshal ¶
func (m *SampleStream) Unmarshal(dAtA []byte) error
func (*SampleStream) XXX_DiscardUnknown ¶
func (m *SampleStream) XXX_DiscardUnknown()
func (*SampleStream) XXX_Marshal ¶
func (m *SampleStream) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*SampleStream) XXX_Merge ¶
func (m *SampleStream) XXX_Merge(src proto.Message)
func (*SampleStream) XXX_Size ¶
func (m *SampleStream) XXX_Size() int
func (*SampleStream) XXX_Unmarshal ¶
func (m *SampleStream) XXX_Unmarshal(b []byte) error
type Tripperware ¶
type Tripperware func(http.RoundTripper) http.RoundTripper
Tripperware is a signature for all http client-side middleware.
func NewQueryTripperware ¶
func NewQueryTripperware( log log.Logger, registerer prometheus.Registerer, forwardHeaders []string, queryRangeMiddleware []Middleware, instantRangeMiddleware []Middleware, queryRangeCodec Codec, instantQueryCodec Codec, limits Limits, queryAnalyzer querysharding.Analyzer, defaultSubQueryInterval time.Duration, maxSubQuerySteps int64, lookbackDelta time.Duration, ) Tripperware