frontend

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 27, 2021 License: AGPL-3.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MinQueryShards = 2
	MaxQueryShards = 256
)

Variables

This section is empty.

Functions

func NewRoundTripper

func NewRoundTripper(next http.RoundTripper, middlewares ...Middleware) http.RoundTripper

NewRoundTripper merges a set of middlewares into an handler, then inject it into the `next` roundtripper

func NewTripperware

func NewTripperware(cfg Config, logger log.Logger, registerer prometheus.Registerer) (queryrange.Tripperware, error)

NewTripperware returns a Tripperware configured with a middleware to split requests

Types

type Config

type Config struct {
	Config      frontend.CombinedFrontendConfig `yaml:",inline"`
	MaxRetries  int                             `yaml:"max_retries,omitempty"`
	QueryShards int                             `yaml:"query_shards,omitempty"`
}

func (*Config) RegisterFlagsAndApplyDefaults

func (cfg *Config) RegisterFlagsAndApplyDefaults(prefix string, f *flag.FlagSet)

type CortexNoQuerierLimits added in v0.6.0

type CortexNoQuerierLimits struct{}

func (CortexNoQuerierLimits) MaxQueriersPerUser added in v0.6.0

func (CortexNoQuerierLimits) MaxQueriersPerUser(user string) int

type Handler

type Handler interface {
	Do(*http.Request) (*http.Response, error)
}

type Middleware

type Middleware interface {
	Wrap(Handler) Handler
}

func Deduper added in v1.0.0

func Deduper(logger log.Logger) Middleware

func MergeMiddlewares

func MergeMiddlewares(middleware ...Middleware) Middleware

func RetryWare added in v1.1.0

func RetryWare(maxRetries int, registerer prometheus.Registerer) Middleware

func ShardingWare

func ShardingWare(queryShards int, logger log.Logger) Middleware

type MiddlewareFunc

type MiddlewareFunc func(Handler) Handler

MiddlewareFunc is like http.HandlerFunc, but for Middleware.

func (MiddlewareFunc) Wrap

func (q MiddlewareFunc) Wrap(h Handler) Handler

Wrap implements Middleware.

type RequestResponse

type RequestResponse struct {
	Request  *http.Request
	Response *http.Response
}

RequestResponse contains a request response and the respective request that was used.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL