aggregations

package
v0.0.0-...-834961c Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2024 License: AGPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Functions

This section is empty.

Types

type Aggregation

type Aggregation struct {
	Inner                    types.InstantVectorOperator
	TimeRange                types.QueryTimeRange
	Grouping                 []string // If this is a 'without' aggregation, NewAggregation will ensure that this slice contains __name__.
	Without                  bool
	MemoryConsumptionTracker *limiting.MemoryConsumptionTracker

	Annotations *annotations.Annotations
	// contains filtered or unexported fields
}

func NewAggregation

func NewAggregation(
	inner types.InstantVectorOperator,
	timeRange types.QueryTimeRange,
	grouping []string,
	without bool,
	op parser.ItemType,
	memoryConsumptionTracker *limiting.MemoryConsumptionTracker,
	annotations *annotations.Annotations,
	expressionPosition posrange.PositionRange,
) (*Aggregation, error)

func (*Aggregation) Close

func (a *Aggregation) Close()

func (*Aggregation) ExpressionPosition

func (a *Aggregation) ExpressionPosition() posrange.PositionRange

func (*Aggregation) NextSeries

func (*Aggregation) SeriesMetadata

func (a *Aggregation) SeriesMetadata(ctx context.Context) ([]types.SeriesMetadata, error)

type AggregationGroup

type AggregationGroup interface {
	// AccumulateSeries takes in a series as part of the group
	AccumulateSeries(data types.InstantVectorSeriesData, timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker, emitAnnotationFunc types.EmitAnnotationFunc) error
	// ComputeOutputSeries does any final calculations and returns the grouped series data
	ComputeOutputSeries(timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker) (types.InstantVectorSeriesData, bool, error)
}

AggregationGroup accumulates series that have been grouped together and computes the output series data.

type AggregationGroupFactory

type AggregationGroupFactory func() AggregationGroup

type AvgAggregationGroup

type AvgAggregationGroup struct {
	// contains filtered or unexported fields
}

func (*AvgAggregationGroup) AccumulateSeries

func (g *AvgAggregationGroup) AccumulateSeries(data types.InstantVectorSeriesData, timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker, emitAnnotationFunc types.EmitAnnotationFunc) error

func (*AvgAggregationGroup) ComputeOutputSeries

func (g *AvgAggregationGroup) ComputeOutputSeries(timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker) (types.InstantVectorSeriesData, bool, error)

type CountGroupAggregationGroup

type CountGroupAggregationGroup struct {
	// contains filtered or unexported fields
}

func NewCountGroupAggregationGroup

func NewCountGroupAggregationGroup(count bool) *CountGroupAggregationGroup

count represents whether this aggregation is `count` (true), or `group` (false)

func (*CountGroupAggregationGroup) AccumulateSeries

func (*CountGroupAggregationGroup) ComputeOutputSeries

func (g *CountGroupAggregationGroup) ComputeOutputSeries(timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker) (types.InstantVectorSeriesData, bool, error)

type MinMaxAggregationGroup

type MinMaxAggregationGroup struct {
	// contains filtered or unexported fields
}

func NewMinMaxAggregationGroup

func NewMinMaxAggregationGroup(max bool) *MinMaxAggregationGroup

max represents whether this aggregation is `max` (true), or `min` (false)

func (*MinMaxAggregationGroup) AccumulateSeries

func (g *MinMaxAggregationGroup) AccumulateSeries(data types.InstantVectorSeriesData, timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker, emitAnnotation types.EmitAnnotationFunc) error

func (*MinMaxAggregationGroup) ComputeOutputSeries

func (g *MinMaxAggregationGroup) ComputeOutputSeries(timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker) (types.InstantVectorSeriesData, bool, error)

type StddevStdvarAggregationGroup

type StddevStdvarAggregationGroup struct {
	// contains filtered or unexported fields
}

func NewStddevStdvarAggregationGroup

func NewStddevStdvarAggregationGroup(stddev bool) *StddevStdvarAggregationGroup

stddev represents whether this aggregation is `stddev` (true), or `stdvar` (false)

func (*StddevStdvarAggregationGroup) AccumulateSeries

func (g *StddevStdvarAggregationGroup) AccumulateSeries(data types.InstantVectorSeriesData, timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker, emitAnnotation types.EmitAnnotationFunc) error

func (*StddevStdvarAggregationGroup) ComputeOutputSeries

func (g *StddevStdvarAggregationGroup) ComputeOutputSeries(timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker) (types.InstantVectorSeriesData, bool, error)

type SumAggregationGroup

type SumAggregationGroup struct {
	// contains filtered or unexported fields
}

func (*SumAggregationGroup) AccumulateSeries

func (g *SumAggregationGroup) AccumulateSeries(data types.InstantVectorSeriesData, timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker, emitAnnotationFunc types.EmitAnnotationFunc) error

func (*SumAggregationGroup) ComputeOutputSeries

func (g *SumAggregationGroup) ComputeOutputSeries(timeRange types.QueryTimeRange, memoryConsumptionTracker *limiting.MemoryConsumptionTracker) (types.InstantVectorSeriesData, bool, error)

Jump to

Keyboard shortcuts

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