sum

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2021 License: Apache-2.0 Imports: 6 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 aggregates counter events.

func New

func New(cnt int) []Aggregator

New returns a new counter aggregator implemented by atomic operations. This aggregator implements the aggregation.Sum export interface.

func (*Aggregator) Aggregation

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

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

func (*Aggregator) Kind

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

Kind returns aggregation.SumKind.

func (*Aggregator) Merge

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

Merge combines two counters by adding their sums.

func (*Aggregator) Subtract

func (c *Aggregator) Subtract(opAgg, resAgg export.Aggregator, descriptor *metric.Descriptor) error

func (*Aggregator) Sum

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

Sum returns the last-checkpointed sum. This will never return an error.

func (*Aggregator) SynchronizedMove

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

SynchronizedMove atomically saves the current value into oa and resets the current sum to zero.

func (*Aggregator) Update

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

Update atomically adds to the current value.

Jump to

Keyboard shortcuts

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