Documentation ¶
Index ¶
- Constants
- func NewQuerierHandler(cfg Config, queryable storage.SampleAndChunkQueryable, engine *promql.Engine, ...) http.Handler
- type API
- func (a *API) RegisterAPI(httpPathPrefix string, actualCfg interface{}, defaultCfg interface{})
- func (a *API) RegisterAlertmanager(am *alertmanager.MultitenantAlertmanager, target, apiEnabled bool)
- func (a *API) RegisterChunksPurger(store *purger.DeleteStore, deleteRequestCancelPeriod time.Duration)
- func (a *API) RegisterCompactor(c *compactor.Compactor)
- func (a *API) RegisterDistributor(d *distributor.Distributor, pushConfig distributor.Config)
- func (a *API) RegisterIngester(i Ingester, pushConfig distributor.Config)
- func (a *API) RegisterMemberlistKV(handler http.Handler)
- func (a *API) RegisterQueryAPI(handler http.Handler)
- func (a *API) RegisterQueryFrontend1(f *frontendv1.Frontend)
- func (a *API) RegisterQueryFrontend2(f *frontendv2.Frontend)
- func (a *API) RegisterQueryFrontendHandler(h http.Handler)
- func (a *API) RegisterQueryScheduler(f *scheduler.Scheduler)
- func (a *API) RegisterQueryable(queryable storage.SampleAndChunkQueryable, ...)
- func (a *API) RegisterRing(r *ring.Ring)
- func (a *API) RegisterRoute(path string, handler http.Handler, auth bool, method string, methods ...string)
- func (a *API) RegisterRoutesWithPrefix(prefix string, handler http.Handler, auth bool, methods ...string)
- func (a *API) RegisterRuler(r *ruler.Ruler)
- func (a *API) RegisterRulerAPI(r *ruler.API)
- func (a *API) RegisterRuntimeConfig(runtimeConfigHandler http.HandlerFunc)
- func (a *API) RegisterServiceMapHandler(handler http.Handler)
- func (a *API) RegisterStoreGateway(s *storegateway.StoreGateway)
- func (a *API) RegisterTenantDeletion(api *purger.TenantDeletionAPI)
- type Config
- type DistributorPushWrapper
- type IndexPageContent
- type Ingester
Constants ¶
const ( SectionAdminEndpoints = "Admin Endpoints:" SectionDangerous = "Dangerous:" )
Variables ¶
This section is empty.
Functions ¶
func NewQuerierHandler ¶ added in v1.5.0
func NewQuerierHandler( cfg Config, queryable storage.SampleAndChunkQueryable, engine *promql.Engine, distributor *distributor.Distributor, tombstonesLoader *purger.TombstonesLoader, reg prometheus.Registerer, logger log.Logger, ) http.Handler
NewQuerierHandler returns a HTTP handler that can be used by the querier service to either register with the frontend worker query processor or with the external HTTP server to fulfill the Prometheus query API.
Types ¶
type API ¶
type API struct { AuthMiddleware middleware.Interface // contains filtered or unexported fields }
func (*API) RegisterAPI ¶
RegisterAPI registers the standard endpoints associated with a running Cortex.
func (*API) RegisterAlertmanager ¶
func (a *API) RegisterAlertmanager(am *alertmanager.MultitenantAlertmanager, target, apiEnabled bool)
RegisterAlertmanager registers endpoints associated with the alertmanager. It will only serve endpoints using the legacy http-prefix if it is not run as a single binary.
func (*API) RegisterChunksPurger ¶ added in v1.6.0
func (a *API) RegisterChunksPurger(store *purger.DeleteStore, deleteRequestCancelPeriod time.Duration)
RegisterChunksPurger registers the endpoints associated with the Purger/DeleteStore. They do not exactly match the Prometheus API but mirror it closely enough to justify their routing under the Prometheus component/
func (*API) RegisterCompactor ¶
RegisterCompactor registers the ring UI page associated with the compactor.
func (*API) RegisterDistributor ¶
func (a *API) RegisterDistributor(d *distributor.Distributor, pushConfig distributor.Config)
RegisterDistributor registers the endpoints associated with the distributor.
func (*API) RegisterIngester ¶
func (a *API) RegisterIngester(i Ingester, pushConfig distributor.Config)
RegisterIngester registers the ingesters HTTP and GRPC service
func (*API) RegisterMemberlistKV ¶ added in v1.7.0
func (*API) RegisterQueryAPI ¶ added in v1.5.0
RegisterQueryAPI registers the Prometheus API routes with the provided handler.
func (*API) RegisterQueryFrontend1 ¶ added in v1.6.0
func (a *API) RegisterQueryFrontend1(f *frontendv1.Frontend)
func (*API) RegisterQueryFrontend2 ¶ added in v1.6.0
func (a *API) RegisterQueryFrontend2(f *frontendv2.Frontend)
func (*API) RegisterQueryFrontendHandler ¶ added in v1.6.0
RegisterQueryFrontend registers the Prometheus routes supported by the Cortex querier service. Currently this can not be registered simultaneously with the Querier.
func (*API) RegisterQueryScheduler ¶ added in v1.6.0
func (*API) RegisterQueryable ¶ added in v1.5.0
func (a *API) RegisterQueryable( queryable storage.SampleAndChunkQueryable, distributor *distributor.Distributor, )
RegisterQueryable registers the the default routes associated with the querier module.
func (*API) RegisterRing ¶
RegisterRing registers the ring UI page associated with the distributor for writes.
func (*API) RegisterRoute ¶
func (a *API) RegisterRoute(path string, handler http.Handler, auth bool, method string, methods ...string)
RegisterRoute registers a single route enforcing HTTP methods. A single route is expected to be specific about which HTTP methods are supported.
func (*API) RegisterRoutesWithPrefix ¶
func (*API) RegisterRuler ¶
RegisterRuler registers routes associated with the Ruler service.
func (*API) RegisterRulerAPI ¶ added in v1.5.0
RegisterRulerAPI registers routes associated with the Ruler API
func (*API) RegisterRuntimeConfig ¶ added in v1.7.0
func (a *API) RegisterRuntimeConfig(runtimeConfigHandler http.HandlerFunc)
RegisterRuntimeConfig registers the endpoints associates with the runtime configuration
func (*API) RegisterServiceMapHandler ¶
RegisterServiceMapHandler registers the Cortex structs service handler TODO: Refactor this code to be accomplished using the services.ServiceManager or a future module manager #2291
func (*API) RegisterStoreGateway ¶
func (a *API) RegisterStoreGateway(s *storegateway.StoreGateway)
RegisterStoreGateway registers the ring UI page associated with the store-gateway.
func (*API) RegisterTenantDeletion ¶ added in v1.8.0
func (a *API) RegisterTenantDeletion(api *purger.TenantDeletionAPI)
type Config ¶
type Config struct { ResponseCompression bool `yaml:"response_compression_enabled"` AlertmanagerHTTPPrefix string `yaml:"alertmanager_http_prefix"` PrometheusHTTPPrefix string `yaml:"prometheus_http_prefix"` // The following configs are injected by the upstream caller. ServerPrefix string `yaml:"-"` LegacyHTTPPrefix string `yaml:"-"` HTTPAuthMiddleware middleware.Interface `yaml:"-"` // This allows downstream projects to wrap the distributor push function // and access the deserialized write requests before/after they are pushed. DistributorPushWrapper DistributorPushWrapper `yaml:"-"` }
func (*Config) RegisterFlags ¶
RegisterFlags adds the flags required to config this to the given FlagSet.
type DistributorPushWrapper ¶ added in v1.8.0
DistributorPushWrapper wraps around a push. It is similar to middleware.Interface.
type IndexPageContent ¶ added in v1.4.0
type IndexPageContent struct {
// contains filtered or unexported fields
}
IndexPageContent is a map of sections to path -> description.
func (*IndexPageContent) AddLink ¶ added in v1.4.0
func (pc *IndexPageContent) AddLink(section, path, description string)
func (*IndexPageContent) GetContent ¶ added in v1.4.0
func (pc *IndexPageContent) GetContent() map[string]map[string]string
type Ingester ¶ added in v1.5.0
type Ingester interface { client.IngesterServer FlushHandler(http.ResponseWriter, *http.Request) ShutdownHandler(http.ResponseWriter, *http.Request) Push(context.Context, *client.WriteRequest) (*client.WriteResponse, error) }
Ingester is defined as an interface to allow for alternative implementations of ingesters to be passed into the API.RegisterIngester() method.