This section is empty.


This section is empty.


This section is empty.


type Aggregator

type Aggregator struct {
	// contains filtered or unexported fields

Aggregator aggregates events that form a distribution, keeping an array with the exact set of values.

func New

func New(cnt int) []Aggregator

New returns a new array aggregator, which aggregates recorded measurements by storing them in an array. This type uses a mutex for Update() and SynchronizedMove() concurrency.

func (*Aggregator) Aggregation

func (c *Aggregator) Aggregation() aggregation.Aggregation

Aggregation returns an interface for reading the state of this aggregator.

func (*Aggregator) Count

func (c *Aggregator) Count() (int64, error)

Count returns the number of values in the checkpoint.

func (*Aggregator) Kind

func (c *Aggregator) Kind() aggregation.Kind

Kind returns aggregation.ExactKind.

func (*Aggregator) Max

func (c *Aggregator) Max() (number.Number, error)

Max returns the maximum value in the checkpoint.

func (*Aggregator) Merge

func (c *Aggregator) Merge(oa export.Aggregator, desc *metric.Descriptor) error

Merge combines two data sets into one.

func (*Aggregator) Min

func (c *Aggregator) Min() (number.Number, error)

Min returns the mininum value in the checkpoint.

func (*Aggregator) Points

func (c *Aggregator) Points() ([]number.Number, error)

Points returns access to the raw data set.

func (*Aggregator) Quantile

func (c *Aggregator) Quantile(q float64) (number.Number, error)

Quantile returns the estimated quantile of data in the checkpoint. It is an error if `q` is less than 0 or greated than 1.

func (*Aggregator) Sum

func (c *Aggregator) Sum() (number.Number, error)

Sum returns the sum of values in the checkpoint.

func (*Aggregator) SynchronizedMove

func (c *Aggregator) SynchronizedMove(oa export.Aggregator, desc *metric.Descriptor) error

SynchronizedMove saves the current state to oa and resets the current state to the empty set, taking a lock to prevent concurrent Update() calls.

func (*Aggregator) Update

func (c *Aggregator) Update(_ context.Context, number number.Number, desc *metric.Descriptor) error

Update adds the recorded measurement to the current data set. Update takes a lock to prevent concurrent Update() and SynchronizedMove() calls.

Source Files