Documentation ¶
Index ¶
- func AdjustStartEnd(start, end, step int64) (int64, int64)
- func Exec(qt *querytracer.Tracer, ec *EvalConfig, q string, isFirstPointOnly bool) ([]netstorage.Result, error)
- func InitRollupResultCache(cachePath string)
- func IsMetricSelectorWithRollup(s string) (childQuery string, window, offset *metricsql.DurationExpr)
- func IsRollup(s string) (childQuery string, window, step, offset *metricsql.DurationExpr)
- func ResetRollupResultCache()
- func ResetRollupResultCacheIfNeeded(mrs []storage.MetricRow)
- func StopRollupResultCache()
- func ValidateMaxPointsPerTimeseries(start, end, step int64) error
- func WriteActiveQueries(w io.Writer)
- type EvalConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AdjustStartEnd ¶
AdjustStartEnd adjusts start and end values, so response caching may be enabled.
See EvalConfig.mayCache for details.
func Exec ¶
func Exec(qt *querytracer.Tracer, ec *EvalConfig, q string, isFirstPointOnly bool) ([]netstorage.Result, error)
Exec executes q for the given ec.
func InitRollupResultCache ¶
func InitRollupResultCache(cachePath string)
InitRollupResultCache initializes the rollupResult cache
if cachePath is empty, then the cache isn't stored to persistent disk.
ResetRollupResultCache must be called when the cache must be reset. StopRollupResultCache must be called when the cache isn't needed anymore.
func IsMetricSelectorWithRollup ¶
func IsMetricSelectorWithRollup(s string) (childQuery string, window, offset *metricsql.DurationExpr)
IsMetricSelectorWithRollup verifies whether s contains PromQL metric selector wrapped into rollup.
It returns the wrapped query with the corresponding window with offset.
func IsRollup ¶ added in v1.31.0
func IsRollup(s string) (childQuery string, window, step, offset *metricsql.DurationExpr)
IsRollup verifies whether s is a rollup with non-empty window.
It returns the wrapped query with the corresponding window, step and offset.
func ResetRollupResultCache ¶
func ResetRollupResultCache()
ResetRollupResultCache resets rollup result cache.
func ResetRollupResultCacheIfNeeded ¶ added in v1.50.0
ResetRollupResultCacheIfNeeded resets rollup result cache if mrs contains timestamps outside `now - search.cacheTimestampOffset`.
func StopRollupResultCache ¶
func StopRollupResultCache()
StopRollupResultCache closes the rollupResult cache.
func ValidateMaxPointsPerTimeseries ¶
ValidateMaxPointsPerTimeseries checks the maximum number of points that may be returned per each time series.
The number mustn't exceed -search.maxPointsPerTimeseries.
func WriteActiveQueries ¶ added in v1.38.0
WriteActiveQueries writes active queries to w.
The written active queries are sorted in descending order of their exeuction duration.
Types ¶
type EvalConfig ¶
type EvalConfig struct { Start int64 End int64 Step int64 // MaxSeries is the maximum number of time series, which can be scanned by the query. // Zero means 'no limit' MaxSeries int // QuotedRemoteAddr contains quoted remote address. QuotedRemoteAddr string Deadline searchutils.Deadline // Whether the response can be cached. MayCache bool // LookbackDelta is analog to `-query.lookback-delta` from Prometheus. LookbackDelta int64 // How many decimal digits after the point to leave in response. RoundDigits int // EnforcedTagFilterss may contain additional label filters to use in the query. EnforcedTagFilterss [][]storage.TagFilter // contains filtered or unexported fields }
EvalConfig is the configuration required for query evaluation via Exec