Documentation
¶
Index ¶
- func CalculateHistogramSampleCount(h *histogram.FloatHistogram) int
- func NewOperator(telemetry OperatorTelemetry, inner model.VectorOperator) model.VectorOperator
- func StepTrackingInterval(step time.Duration) int64
- type NoopTelemetry
- func (tm *NoopTelemetry) AddExecutionTimeTaken(t time.Duration)
- func (tm *NoopTelemetry) AddNextExecutionTime(t time.Duration)
- func (tm *NoopTelemetry) AddSeriesExecutionTime(t time.Duration)
- func (tm *NoopTelemetry) ExecutionTimeTaken() time.Duration
- func (tm *NoopTelemetry) IncrementSamplesAtTimestamp(_ int, _ int64)
- func (tm *NoopTelemetry) LogicalNode() logicalplan.Node
- func (tm *NoopTelemetry) MaxSeriesCount() int
- func (tm *NoopTelemetry) NextExecutionTime() time.Duration
- func (tm *NoopTelemetry) Samples() *stats.QuerySamples
- func (tm *NoopTelemetry) SeriesExecutionTime() time.Duration
- func (tm *NoopTelemetry) SetMaxSeriesCount(_ int)
- func (tm *NoopTelemetry) UpdatePeak(_ int)
- type ObservableVectorOperator
- type Operator
- type OperatorTelemetry
- type TrackedTelemetry
- func (ti *TrackedTelemetry) AddExecutionTimeTaken(t time.Duration)
- func (ti *TrackedTelemetry) AddNextExecutionTime(t time.Duration)
- func (ti *TrackedTelemetry) AddSeriesExecutionTime(t time.Duration)
- func (ti *TrackedTelemetry) ExecutionTimeTaken() time.Duration
- func (ti *TrackedTelemetry) IncrementSamplesAtTimestamp(samples int, t int64)
- func (ti *TrackedTelemetry) LogicalNode() logicalplan.Node
- func (ti *TrackedTelemetry) MaxSeriesCount() int
- func (ti *TrackedTelemetry) NextExecutionTime() time.Duration
- func (ti *TrackedTelemetry) Samples() *stats.QuerySamples
- func (ti *TrackedTelemetry) SeriesExecutionTime() time.Duration
- func (ti *TrackedTelemetry) SetMaxSeriesCount(count int)
- func (ti *TrackedTelemetry) UpdatePeak(count int)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CalculateHistogramSampleCount ¶
func CalculateHistogramSampleCount(h *histogram.FloatHistogram) int
CalculateHistogramSampleCount returns the size of the FloatHistogram compared to the size of a Float. The total size is calculated considering the histogram timestamp (p.T - 8 bytes), and then a number of bytes in the histogram. This sum is divided by 16, as samples are 16 bytes. See: https://github.com/prometheus/prometheus/blob/2bf6f4c9dcbb1ad2e8fef70c6a48d8fc44a7f57c/promql/value.go#L178
func NewOperator ¶
func NewOperator(telemetry OperatorTelemetry, inner model.VectorOperator) model.VectorOperator
func StepTrackingInterval ¶
Types ¶
type NoopTelemetry ¶
func NewNoopTelemetry ¶
func NewNoopTelemetry(operator fmt.Stringer) *NoopTelemetry
func (*NoopTelemetry) AddExecutionTimeTaken ¶
func (tm *NoopTelemetry) AddExecutionTimeTaken(t time.Duration)
func (*NoopTelemetry) AddNextExecutionTime ¶
func (tm *NoopTelemetry) AddNextExecutionTime(t time.Duration)
func (*NoopTelemetry) AddSeriesExecutionTime ¶
func (tm *NoopTelemetry) AddSeriesExecutionTime(t time.Duration)
func (*NoopTelemetry) ExecutionTimeTaken ¶
func (tm *NoopTelemetry) ExecutionTimeTaken() time.Duration
func (*NoopTelemetry) IncrementSamplesAtTimestamp ¶
func (tm *NoopTelemetry) IncrementSamplesAtTimestamp(_ int, _ int64)
func (*NoopTelemetry) LogicalNode ¶
func (tm *NoopTelemetry) LogicalNode() logicalplan.Node
func (*NoopTelemetry) MaxSeriesCount ¶
func (tm *NoopTelemetry) MaxSeriesCount() int
func (*NoopTelemetry) NextExecutionTime ¶
func (tm *NoopTelemetry) NextExecutionTime() time.Duration
func (*NoopTelemetry) Samples ¶
func (tm *NoopTelemetry) Samples() *stats.QuerySamples
func (*NoopTelemetry) SeriesExecutionTime ¶
func (tm *NoopTelemetry) SeriesExecutionTime() time.Duration
func (*NoopTelemetry) SetMaxSeriesCount ¶
func (tm *NoopTelemetry) SetMaxSeriesCount(_ int)
func (*NoopTelemetry) UpdatePeak ¶
func (tm *NoopTelemetry) UpdatePeak(_ int)
type ObservableVectorOperator ¶
type ObservableVectorOperator interface {
model.VectorOperator
OperatorTelemetry
}
type Operator ¶
type Operator struct {
OperatorTelemetry
// contains filtered or unexported fields
}
Operator wraps other inner operator to track its telemetry.
func (*Operator) Explain ¶
func (t *Operator) Explain() []model.VectorOperator
func (*Operator) GetPool ¶
func (t *Operator) GetPool() *model.VectorPool
type OperatorTelemetry ¶
type OperatorTelemetry interface {
fmt.Stringer
MaxSeriesCount() int
SetMaxSeriesCount(count int)
ExecutionTimeTaken() time.Duration
AddSeriesExecutionTime(time.Duration)
SeriesExecutionTime() time.Duration
AddNextExecutionTime(time.Duration)
NextExecutionTime() time.Duration
IncrementSamplesAtTimestamp(samples int, t int64)
Samples() *stats.QuerySamples
LogicalNode() logicalplan.Node
UpdatePeak(count int)
}
func NewStepInvariantTelemetry ¶
func NewStepInvariantTelemetry(operator fmt.Stringer, opts *query.Options) OperatorTelemetry
func NewSubqueryTelemetry ¶
func NewSubqueryTelemetry(operator fmt.Stringer, opts *query.Options) OperatorTelemetry
func NewTelemetry ¶
func NewTelemetry(operator fmt.Stringer, opts *query.Options) OperatorTelemetry
type TrackedTelemetry ¶
type TrackedTelemetry struct {
fmt.Stringer
Series int
ExecutionTime time.Duration
SeriesTime time.Duration
NextTime time.Duration
LoadedSamples *stats.QuerySamples
// contains filtered or unexported fields
}
func NewTrackedTelemetry ¶
func NewTrackedTelemetry(operator fmt.Stringer, opts *query.Options, logicalPlanNode logicalplan.Node) *TrackedTelemetry
func (*TrackedTelemetry) AddExecutionTimeTaken ¶
func (ti *TrackedTelemetry) AddExecutionTimeTaken(t time.Duration)
func (*TrackedTelemetry) AddNextExecutionTime ¶
func (ti *TrackedTelemetry) AddNextExecutionTime(t time.Duration)
func (*TrackedTelemetry) AddSeriesExecutionTime ¶
func (ti *TrackedTelemetry) AddSeriesExecutionTime(t time.Duration)
func (*TrackedTelemetry) ExecutionTimeTaken ¶
func (ti *TrackedTelemetry) ExecutionTimeTaken() time.Duration
func (*TrackedTelemetry) IncrementSamplesAtTimestamp ¶
func (ti *TrackedTelemetry) IncrementSamplesAtTimestamp(samples int, t int64)
func (*TrackedTelemetry) LogicalNode ¶
func (ti *TrackedTelemetry) LogicalNode() logicalplan.Node
func (*TrackedTelemetry) MaxSeriesCount ¶
func (ti *TrackedTelemetry) MaxSeriesCount() int
func (*TrackedTelemetry) NextExecutionTime ¶
func (ti *TrackedTelemetry) NextExecutionTime() time.Duration
func (*TrackedTelemetry) Samples ¶
func (ti *TrackedTelemetry) Samples() *stats.QuerySamples
func (*TrackedTelemetry) SeriesExecutionTime ¶
func (ti *TrackedTelemetry) SeriesExecutionTime() time.Duration
func (*TrackedTelemetry) SetMaxSeriesCount ¶
func (ti *TrackedTelemetry) SetMaxSeriesCount(count int)
func (*TrackedTelemetry) UpdatePeak ¶
func (ti *TrackedTelemetry) UpdatePeak(count int)
Click to show internal directories.
Click to hide internal directories.