metrics/smithyotelmetrics/float64.go (31 lines of code) (raw):

package smithyotelmetrics import ( "context" "github.com/aws/smithy-go/metrics" otelmetric "go.opentelemetry.io/otel/metric" ) type otelFloat64Add interface { Add(context.Context, float64, ...otelmetric.AddOption) } type float64Counter struct { otel otelFloat64Add } var _ metrics.Float64Counter = (*float64Counter)(nil) var _ metrics.Float64UpDownCounter = (*float64Counter)(nil) func (i *float64Counter) Add(ctx context.Context, v float64, opts ...metrics.RecordMetricOption) { i.otel.Add(ctx, v, withMetricProps(opts...)) } type float64Gauge struct { otel otelmetric.Float64Gauge } var _ metrics.Float64Gauge = (*float64Gauge)(nil) func (i *float64Gauge) Sample(ctx context.Context, v float64, opts ...metrics.RecordMetricOption) { i.otel.Record(ctx, v, withMetricProps(opts...)) } type float64Histogram struct { otel otelmetric.Float64Histogram } var _ metrics.Float64Histogram = (*float64Histogram)(nil) func (i *float64Histogram) Record(ctx context.Context, v float64, opts ...metrics.RecordMetricOption) { i.otel.Record(ctx, v, withMetricProps(opts...)) }