MCPcopy Index your code
hub / github.com/cortexproject/cortex / buildQueryFunc

Function buildQueryFunc

pkg/ruler/compat.go:412–434  ·  view source on GitHub ↗
(
	engine promql.QueryEngine,
	client *frontendClient,
	q storage.Queryable,
	overrides RulesLimits,
	userID string,
	cfg Config,
	metrics *RuleEvalMetrics,
	logger log.Logger,
)

Source from the content-addressed store, hash-verified

410}
411
412func buildQueryFunc(
413 engine promql.QueryEngine,
414 client *frontendClient,
415 q storage.Queryable,
416 overrides RulesLimits,
417 userID string,
418 cfg Config,
419 metrics *RuleEvalMetrics,
420 logger log.Logger,
421) rules.QueryFunc {
422 baseQueryFunc := engineQueryFunc(engine, client, q, overrides, userID, cfg.LookbackDelta)
423
424 // apply metric middleware
425 totalQueries := metrics.TotalQueriesVec.WithLabelValues(userID)
426 failedQueries := metrics.FailedQueriesVec.WithLabelValues(userID)
427 metricsFunc := metricsQueryFunc(baseQueryFunc, totalQueries, failedQueries)
428
429 // apply statistic middleware
430 if cfg.EnableQueryStats {
431 return recordAndReportRuleQueryMetrics(metricsFunc, userID, metrics, logger)
432 }
433 return metricsFunc
434}
435
436type QueryableError struct {
437 err error

Callers 1

Calls 3

engineQueryFuncFunction · 0.85
metricsQueryFuncFunction · 0.85

Tested by

no test coverage detected