aggregator

package
v2.31.1 Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Aggregator

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

Aggregator is responsible for collection and aggregation in timed manner samples gathered from StagingTable. Aggregator is driven by two timers which determine aggregation and publication periods.

func New

func New(t ReadTable, publisher Publisher, schema *schema.Schema, limit limits.Limits) *Aggregator

func (*Aggregator) Run

func (a *Aggregator) Run(ctx context.Context, aggregationTicker <-chan time.Time, publishTicker <-chan time.Time)

type PriorityTable

type PriorityTable interface {
	Samples() map[string]*sample.Sample
}

type Publisher

type Publisher interface {
	Publish(context.Context, tables.LookupSet, PriorityTable) error
}

type ReadTable

type ReadTable interface {
	ReadSnapshot(resetLookups bool) (tables.SamplesView, tables.LookupSet)
}

Directories

Path Synopsis
Code generated by MockGen.
Code generated by MockGen.

Jump to

Keyboard shortcuts

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