otel: go.opentelemetry.io/otel/sdk/export/metric/aggregator Index | Files

package aggregator

import "go.opentelemetry.io/otel/sdk/export/metric/aggregator"

Index

Package Files

aggregator.go

Variables

var (
    ErrInvalidQuantile  = fmt.Errorf("the requested quantile is out of range")
    ErrNegativeInput    = fmt.Errorf("negative value is out of range for this instrument")
    ErrNaNInput         = fmt.Errorf("NaN value is an invalid input")
    ErrNonMonotoneInput = fmt.Errorf("the new value is not monotone")
    ErrInconsistentType = fmt.Errorf("inconsistent aggregator types")

    // ErrNoLastValue is returned by the LastValue interface when
    // (due to a race with collection) the Aggregator is
    // checkpointed before the first value is set.  The aggregator
    // should simply be skipped in this case.
    ErrNoLastValue = fmt.Errorf("no value has been set")

    // ErrEmptyDataSet is returned by Max and Quantile interfaces
    // when (due to a race with collection) the Aggregator is
    // checkpointed before the first value is set.  The aggregator
    // should simply be skipped in this case.
    ErrEmptyDataSet = fmt.Errorf("the result is not defined on an empty data set")
)

func NewInconsistentMergeError Uses

func NewInconsistentMergeError(a1, a2 export.Aggregator) error

NewInconsistentMergeError formats an error describing an attempt to merge different-type aggregators. The result can be unwrapped as an ErrInconsistentType.

func RangeTest Uses

func RangeTest(number core.Number, descriptor *export.Descriptor) error

RangeTest is a commmon routine for testing for valid input values. This rejects NaN values. This rejects negative values when the metric instrument does not support negative values, including monotonic counter metrics and absolute measure metrics.

type Buckets Uses

type Buckets struct {
    Boundaries []core.Number
    Counts     []core.Number
}

Buckets represents histogram buckets boundaries and counts.

For a Histogram with N defined boundaries, e.g, [x, y, z]. There are N+1 counts: [-inf, x), [x, y), [y, z), [z, +inf]

type Count Uses

type Count interface {
    Count() (int64, error)
}

Sum returns the number of values that were aggregated.

type Distribution Uses

type Distribution interface {
    MinMaxSumCount
    Quantile
}

Distribution supports the Min, Max, Sum, Count, and Quantile interfaces.

type Histogram Uses

type Histogram interface {
    Histogram() (Buckets, error)
}

Histogram returns the count of events in pre-determined buckets.

type LastValue Uses

type LastValue interface {
    LastValue() (core.Number, time.Time, error)
}

LastValue returns the latest value that was aggregated.

type Max Uses

type Max interface {
    Max() (core.Number, error)
}

Max returns the maximum value over the set of values that were aggregated.

type Min Uses

type Min interface {
    Min() (core.Number, error)
}

Min returns the minimum value over the set of values that were aggregated.

type MinMaxSumCount Uses

type MinMaxSumCount interface {
    Min
    Max
    Sum
    Count
}

MinMaxSumCount supports the Min, Max, Sum, and Count interfaces.

type Points Uses

type Points interface {
    Points() ([]core.Number, error)
}

Points returns the raw set of values that were aggregated.

type Quantile Uses

type Quantile interface {
    Quantile(float64) (core.Number, error)
}

Quantile returns an exact or estimated quantile over the set of values that were aggregated.

type Sum Uses

type Sum interface {
    Sum() (core.Number, error)
}

Sum returns an aggregated sum.

Package aggregator imports 5 packages (graph) and is imported by 11 packages. Updated 2020-01-29. Refresh now. Tools for package owners.