registry

package
v0.27.0 Latest Latest
Warning

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

Go to latest
Published: Feb 11, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package registry provides a non-standalone implementation of MeterProvider that adds uniqueness checking for instrument descriptors on top of other MeterProvider it wraps.

This package is currently in a pre-GA phase. Backwards incompatible changes may be introduced in subsequent minor version releases as we work to track the evolving OpenTelemetry specification and user feedback.

Index

Constants

This section is empty.

Variables

View Source
var ErrMetricKindMismatch = fmt.Errorf(
	"a metric was already registered by this name with another kind or number type")

ErrMetricKindMismatch is the standard error for mismatched metric instrument definitions.

Functions

func Compatible

func Compatible(candidate, existing sdkapi.Descriptor) bool

Compatible determines whether two sdkapi.Descriptors are considered the same for the purpose of uniqueness checking.

func NewMetricKindMismatchError

func NewMetricKindMismatchError(desc sdkapi.Descriptor) error

NewMetricKindMismatchError formats an error that describes a mismatched metric instrument definition.

Types

type UniqueInstrumentMeterImpl

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

UniqueInstrumentMeterImpl implements the metric.MeterImpl interface, adding uniqueness checking for instrument descriptors.

func NewUniqueInstrumentMeterImpl

func NewUniqueInstrumentMeterImpl(impl sdkapi.MeterImpl) *UniqueInstrumentMeterImpl

NewUniqueInstrumentMeterImpl returns a wrapped metric.MeterImpl with the addition of instrument name uniqueness checking.

func (*UniqueInstrumentMeterImpl) MeterImpl

MeterImpl gives the caller access to the underlying MeterImpl used by this UniqueInstrumentMeterImpl.

func (*UniqueInstrumentMeterImpl) NewAsyncInstrument

func (u *UniqueInstrumentMeterImpl) NewAsyncInstrument(
	descriptor sdkapi.Descriptor,
	runner sdkapi.AsyncRunner,
) (sdkapi.AsyncImpl, error)

NewAsyncInstrument implements sdkapi.MeterImpl.

func (*UniqueInstrumentMeterImpl) NewSyncInstrument

func (u *UniqueInstrumentMeterImpl) NewSyncInstrument(descriptor sdkapi.Descriptor) (sdkapi.SyncImpl, error)

NewSyncInstrument implements sdkapi.MeterImpl.

func (*UniqueInstrumentMeterImpl) RecordBatch

func (u *UniqueInstrumentMeterImpl) RecordBatch(ctx context.Context, labels []attribute.KeyValue, ms ...sdkapi.Measurement)

RecordBatch implements sdkapi.MeterImpl.

Jump to

Keyboard shortcuts

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