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 ¶
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 metric.Descriptor) bool
Compatible determines whether two metric.Descriptors are considered the same for the purpose of uniqueness checking.
func NewMetricKindMismatchError ¶
func NewMetricKindMismatchError(desc metric.Descriptor) error
NewMetricKindMismatchError formats an error that describes a mismatched metric instrument definition.
Types ¶
type MeterProvider ¶
type MeterProvider struct {
// contains filtered or unexported fields
}
MeterProvider is a standard MeterProvider for wrapping `MeterImpl`
func NewMeterProvider ¶
func NewMeterProvider(impl metric.MeterImpl) *MeterProvider
NewMeterProvider returns a new provider that implements instrument name-uniqueness checking.
func (*MeterProvider) Meter ¶
func (p *MeterProvider) Meter(instrumentationName string, opts ...metric.MeterOption) metric.Meter
Meter implements MeterProvider.