mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-11-18 15:47:31 -06:00
- codeberg.org/gruf/go-ffmpreg: v0.6.9 -> v0.6.10
- github.com/ncruces/go-sqlite3: v0.27.1 -> v0.28.0
- github.com/stretchr/testify: v1.10.0 -> v1.11.1
- github.com/tdewolff/minify/v2 v2.23.11 -> v2.24.2
- go.opentelemetry.io/otel{,/*}: v1.37.0 -> v1.38.0
- go.opentelemetry.io/contrib/*: v0.62.0 -> v0.63.0
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4406
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
2126 lines
No EOL
73 KiB
Go
2126 lines
No EOL
73 KiB
Go
// Code generated from semantic convention specification. DO NOT EDIT.
|
|
|
|
// Copyright The OpenTelemetry Authors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
// Package httpconv provides types and functionality for OpenTelemetry semantic
|
|
// conventions in the "otel" namespace.
|
|
package otelconv
|
|
|
|
import (
|
|
"context"
|
|
"sync"
|
|
|
|
"go.opentelemetry.io/otel/attribute"
|
|
"go.opentelemetry.io/otel/metric"
|
|
"go.opentelemetry.io/otel/metric/noop"
|
|
)
|
|
|
|
var (
|
|
addOptPool = &sync.Pool{New: func() any { return &[]metric.AddOption{} }}
|
|
recOptPool = &sync.Pool{New: func() any { return &[]metric.RecordOption{} }}
|
|
)
|
|
|
|
// ErrorTypeAttr is an attribute conforming to the error.type semantic
|
|
// conventions. It represents the describes a class of error the operation ended
|
|
// with.
|
|
type ErrorTypeAttr string
|
|
|
|
var (
|
|
// ErrorTypeOther is a fallback error value to be used when the instrumentation
|
|
// doesn't define a custom value.
|
|
ErrorTypeOther ErrorTypeAttr = "_OTHER"
|
|
)
|
|
|
|
// ComponentTypeAttr is an attribute conforming to the otel.component.type
|
|
// semantic conventions. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
type ComponentTypeAttr string
|
|
|
|
var (
|
|
// ComponentTypeBatchingSpanProcessor is the builtin SDK batching span
|
|
// processor.
|
|
ComponentTypeBatchingSpanProcessor ComponentTypeAttr = "batching_span_processor"
|
|
// ComponentTypeSimpleSpanProcessor is the builtin SDK simple span processor.
|
|
ComponentTypeSimpleSpanProcessor ComponentTypeAttr = "simple_span_processor"
|
|
// ComponentTypeBatchingLogProcessor is the builtin SDK batching log record
|
|
// processor.
|
|
ComponentTypeBatchingLogProcessor ComponentTypeAttr = "batching_log_processor"
|
|
// ComponentTypeSimpleLogProcessor is the builtin SDK simple log record
|
|
// processor.
|
|
ComponentTypeSimpleLogProcessor ComponentTypeAttr = "simple_log_processor"
|
|
// ComponentTypeOtlpGRPCSpanExporter is the OTLP span exporter over gRPC with
|
|
// protobuf serialization.
|
|
ComponentTypeOtlpGRPCSpanExporter ComponentTypeAttr = "otlp_grpc_span_exporter"
|
|
// ComponentTypeOtlpHTTPSpanExporter is the OTLP span exporter over HTTP with
|
|
// protobuf serialization.
|
|
ComponentTypeOtlpHTTPSpanExporter ComponentTypeAttr = "otlp_http_span_exporter"
|
|
// ComponentTypeOtlpHTTPJSONSpanExporter is the OTLP span exporter over HTTP
|
|
// with JSON serialization.
|
|
ComponentTypeOtlpHTTPJSONSpanExporter ComponentTypeAttr = "otlp_http_json_span_exporter"
|
|
// ComponentTypeZipkinHTTPSpanExporter is the zipkin span exporter over HTTP.
|
|
ComponentTypeZipkinHTTPSpanExporter ComponentTypeAttr = "zipkin_http_span_exporter"
|
|
// ComponentTypeOtlpGRPCLogExporter is the OTLP log record exporter over gRPC
|
|
// with protobuf serialization.
|
|
ComponentTypeOtlpGRPCLogExporter ComponentTypeAttr = "otlp_grpc_log_exporter"
|
|
// ComponentTypeOtlpHTTPLogExporter is the OTLP log record exporter over HTTP
|
|
// with protobuf serialization.
|
|
ComponentTypeOtlpHTTPLogExporter ComponentTypeAttr = "otlp_http_log_exporter"
|
|
// ComponentTypeOtlpHTTPJSONLogExporter is the OTLP log record exporter over
|
|
// HTTP with JSON serialization.
|
|
ComponentTypeOtlpHTTPJSONLogExporter ComponentTypeAttr = "otlp_http_json_log_exporter"
|
|
// ComponentTypePeriodicMetricReader is the builtin SDK periodically exporting
|
|
// metric reader.
|
|
ComponentTypePeriodicMetricReader ComponentTypeAttr = "periodic_metric_reader"
|
|
// ComponentTypeOtlpGRPCMetricExporter is the OTLP metric exporter over gRPC
|
|
// with protobuf serialization.
|
|
ComponentTypeOtlpGRPCMetricExporter ComponentTypeAttr = "otlp_grpc_metric_exporter"
|
|
// ComponentTypeOtlpHTTPMetricExporter is the OTLP metric exporter over HTTP
|
|
// with protobuf serialization.
|
|
ComponentTypeOtlpHTTPMetricExporter ComponentTypeAttr = "otlp_http_metric_exporter"
|
|
// ComponentTypeOtlpHTTPJSONMetricExporter is the OTLP metric exporter over HTTP
|
|
// with JSON serialization.
|
|
ComponentTypeOtlpHTTPJSONMetricExporter ComponentTypeAttr = "otlp_http_json_metric_exporter"
|
|
// ComponentTypePrometheusHTTPTextMetricExporter is the prometheus metric
|
|
// exporter over HTTP with the default text-based format.
|
|
ComponentTypePrometheusHTTPTextMetricExporter ComponentTypeAttr = "prometheus_http_text_metric_exporter"
|
|
)
|
|
|
|
// SpanParentOriginAttr is an attribute conforming to the otel.span.parent.origin
|
|
// semantic conventions. It represents the determines whether the span has a
|
|
// parent span, and if so, [whether it is a remote parent].
|
|
//
|
|
// [whether it is a remote parent]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremote
|
|
type SpanParentOriginAttr string
|
|
|
|
var (
|
|
// SpanParentOriginNone is the span does not have a parent, it is a root span.
|
|
SpanParentOriginNone SpanParentOriginAttr = "none"
|
|
// SpanParentOriginLocal is the span has a parent and the parent's span context
|
|
// [isRemote()] is false.
|
|
//
|
|
// [isRemote()]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremote
|
|
SpanParentOriginLocal SpanParentOriginAttr = "local"
|
|
// SpanParentOriginRemote is the span has a parent and the parent's span context
|
|
// [isRemote()] is true.
|
|
//
|
|
// [isRemote()]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremote
|
|
SpanParentOriginRemote SpanParentOriginAttr = "remote"
|
|
)
|
|
|
|
// SpanSamplingResultAttr is an attribute conforming to the
|
|
// otel.span.sampling_result semantic conventions. It represents the result value
|
|
// of the sampler for this span.
|
|
type SpanSamplingResultAttr string
|
|
|
|
var (
|
|
// SpanSamplingResultDrop is the span is not sampled and not recording.
|
|
SpanSamplingResultDrop SpanSamplingResultAttr = "DROP"
|
|
// SpanSamplingResultRecordOnly is the span is not sampled, but recording.
|
|
SpanSamplingResultRecordOnly SpanSamplingResultAttr = "RECORD_ONLY"
|
|
// SpanSamplingResultRecordAndSample is the span is sampled and recording.
|
|
SpanSamplingResultRecordAndSample SpanSamplingResultAttr = "RECORD_AND_SAMPLE"
|
|
)
|
|
|
|
// RPCGRPCStatusCodeAttr is an attribute conforming to the rpc.grpc.status_code
|
|
// semantic conventions. It represents the gRPC status code of the last gRPC
|
|
// requests performed in scope of this export call.
|
|
type RPCGRPCStatusCodeAttr int64
|
|
|
|
var (
|
|
// RPCGRPCStatusCodeOk is the OK.
|
|
RPCGRPCStatusCodeOk RPCGRPCStatusCodeAttr = 0
|
|
// RPCGRPCStatusCodeCancelled is the CANCELLED.
|
|
RPCGRPCStatusCodeCancelled RPCGRPCStatusCodeAttr = 1
|
|
// RPCGRPCStatusCodeUnknown is the UNKNOWN.
|
|
RPCGRPCStatusCodeUnknown RPCGRPCStatusCodeAttr = 2
|
|
// RPCGRPCStatusCodeInvalidArgument is the INVALID_ARGUMENT.
|
|
RPCGRPCStatusCodeInvalidArgument RPCGRPCStatusCodeAttr = 3
|
|
// RPCGRPCStatusCodeDeadlineExceeded is the DEADLINE_EXCEEDED.
|
|
RPCGRPCStatusCodeDeadlineExceeded RPCGRPCStatusCodeAttr = 4
|
|
// RPCGRPCStatusCodeNotFound is the NOT_FOUND.
|
|
RPCGRPCStatusCodeNotFound RPCGRPCStatusCodeAttr = 5
|
|
// RPCGRPCStatusCodeAlreadyExists is the ALREADY_EXISTS.
|
|
RPCGRPCStatusCodeAlreadyExists RPCGRPCStatusCodeAttr = 6
|
|
// RPCGRPCStatusCodePermissionDenied is the PERMISSION_DENIED.
|
|
RPCGRPCStatusCodePermissionDenied RPCGRPCStatusCodeAttr = 7
|
|
// RPCGRPCStatusCodeResourceExhausted is the RESOURCE_EXHAUSTED.
|
|
RPCGRPCStatusCodeResourceExhausted RPCGRPCStatusCodeAttr = 8
|
|
// RPCGRPCStatusCodeFailedPrecondition is the FAILED_PRECONDITION.
|
|
RPCGRPCStatusCodeFailedPrecondition RPCGRPCStatusCodeAttr = 9
|
|
// RPCGRPCStatusCodeAborted is the ABORTED.
|
|
RPCGRPCStatusCodeAborted RPCGRPCStatusCodeAttr = 10
|
|
// RPCGRPCStatusCodeOutOfRange is the OUT_OF_RANGE.
|
|
RPCGRPCStatusCodeOutOfRange RPCGRPCStatusCodeAttr = 11
|
|
// RPCGRPCStatusCodeUnimplemented is the UNIMPLEMENTED.
|
|
RPCGRPCStatusCodeUnimplemented RPCGRPCStatusCodeAttr = 12
|
|
// RPCGRPCStatusCodeInternal is the INTERNAL.
|
|
RPCGRPCStatusCodeInternal RPCGRPCStatusCodeAttr = 13
|
|
// RPCGRPCStatusCodeUnavailable is the UNAVAILABLE.
|
|
RPCGRPCStatusCodeUnavailable RPCGRPCStatusCodeAttr = 14
|
|
// RPCGRPCStatusCodeDataLoss is the DATA_LOSS.
|
|
RPCGRPCStatusCodeDataLoss RPCGRPCStatusCodeAttr = 15
|
|
// RPCGRPCStatusCodeUnauthenticated is the UNAUTHENTICATED.
|
|
RPCGRPCStatusCodeUnauthenticated RPCGRPCStatusCodeAttr = 16
|
|
)
|
|
|
|
// SDKExporterLogExported is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.exporter.log.exported" semantic conventions. It
|
|
// represents the number of log records for which the export has finished, either
|
|
// successful or failed.
|
|
type SDKExporterLogExported struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKExporterLogExported returns a new SDKExporterLogExported instrument.
|
|
func NewSDKExporterLogExported(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKExporterLogExported, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterLogExported{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.exporter.log.exported",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of log records for which the export has finished, either successful or failed."),
|
|
metric.WithUnit("{log_record}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterLogExported{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKExporterLogExported{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterLogExported) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterLogExported) Name() string {
|
|
return "otel.sdk.exporter.log.exported"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterLogExported) Unit() string {
|
|
return "{log_record}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterLogExported) Description() string {
|
|
return "The number of log records for which the export has finished, either successful or failed."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
// For exporters with partial success semantics (e.g. OTLP with
|
|
// `rejected_log_records`), rejected log records MUST count as failed and only
|
|
// non-rejected log records count as success.
|
|
// If no rejection reason is available, `rejected` SHOULD be used as value for
|
|
// `error.type`.
|
|
func (m SDKExporterLogExported) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
// For exporters with partial success semantics (e.g. OTLP with
|
|
// `rejected_log_records`), rejected log records MUST count as failed and only
|
|
// non-rejected log records count as success.
|
|
// If no rejection reason is available, `rejected` SHOULD be used as value for
|
|
// `error.type`.
|
|
func (m SDKExporterLogExported) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents the describes a class of error the operation ended
|
|
// with.
|
|
func (SDKExporterLogExported) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterLogExported) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterLogExported) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterLogExported) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterLogExported) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKExporterLogInflight is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.exporter.log.inflight" semantic conventions. It
|
|
// represents the number of log records which were passed to the exporter, but
|
|
// that have not been exported yet (neither successful, nor failed).
|
|
type SDKExporterLogInflight struct {
|
|
metric.Int64UpDownCounter
|
|
}
|
|
|
|
// NewSDKExporterLogInflight returns a new SDKExporterLogInflight instrument.
|
|
func NewSDKExporterLogInflight(
|
|
m metric.Meter,
|
|
opt ...metric.Int64UpDownCounterOption,
|
|
) (SDKExporterLogInflight, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterLogInflight{noop.Int64UpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64UpDownCounter(
|
|
"otel.sdk.exporter.log.inflight",
|
|
append([]metric.Int64UpDownCounterOption{
|
|
metric.WithDescription("The number of log records which were passed to the exporter, but that have not been exported yet (neither successful, nor failed)."),
|
|
metric.WithUnit("{log_record}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterLogInflight{noop.Int64UpDownCounter{}}, err
|
|
}
|
|
return SDKExporterLogInflight{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterLogInflight) Inst() metric.Int64UpDownCounter {
|
|
return m.Int64UpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterLogInflight) Name() string {
|
|
return "otel.sdk.exporter.log.inflight"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterLogInflight) Unit() string {
|
|
return "{log_record}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterLogInflight) Description() string {
|
|
return "The number of log records which were passed to the exporter, but that have not been exported yet (neither successful, nor failed)."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
func (m SDKExporterLogInflight) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
func (m SDKExporterLogInflight) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterLogInflight) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterLogInflight) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterLogInflight) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterLogInflight) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKExporterMetricDataPointExported is an instrument used to record metric
|
|
// values conforming to the "otel.sdk.exporter.metric_data_point.exported"
|
|
// semantic conventions. It represents the number of metric data points for which
|
|
// the export has finished, either successful or failed.
|
|
type SDKExporterMetricDataPointExported struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKExporterMetricDataPointExported returns a new
|
|
// SDKExporterMetricDataPointExported instrument.
|
|
func NewSDKExporterMetricDataPointExported(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKExporterMetricDataPointExported, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterMetricDataPointExported{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.exporter.metric_data_point.exported",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of metric data points for which the export has finished, either successful or failed."),
|
|
metric.WithUnit("{data_point}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterMetricDataPointExported{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKExporterMetricDataPointExported{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterMetricDataPointExported) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterMetricDataPointExported) Name() string {
|
|
return "otel.sdk.exporter.metric_data_point.exported"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterMetricDataPointExported) Unit() string {
|
|
return "{data_point}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterMetricDataPointExported) Description() string {
|
|
return "The number of metric data points for which the export has finished, either successful or failed."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
// For exporters with partial success semantics (e.g. OTLP with
|
|
// `rejected_data_points`), rejected data points MUST count as failed and only
|
|
// non-rejected data points count as success.
|
|
// If no rejection reason is available, `rejected` SHOULD be used as value for
|
|
// `error.type`.
|
|
func (m SDKExporterMetricDataPointExported) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
// For exporters with partial success semantics (e.g. OTLP with
|
|
// `rejected_data_points`), rejected data points MUST count as failed and only
|
|
// non-rejected data points count as success.
|
|
// If no rejection reason is available, `rejected` SHOULD be used as value for
|
|
// `error.type`.
|
|
func (m SDKExporterMetricDataPointExported) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents the describes a class of error the operation ended
|
|
// with.
|
|
func (SDKExporterMetricDataPointExported) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterMetricDataPointExported) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterMetricDataPointExported) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterMetricDataPointExported) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterMetricDataPointExported) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKExporterMetricDataPointInflight is an instrument used to record metric
|
|
// values conforming to the "otel.sdk.exporter.metric_data_point.inflight"
|
|
// semantic conventions. It represents the number of metric data points which
|
|
// were passed to the exporter, but that have not been exported yet (neither
|
|
// successful, nor failed).
|
|
type SDKExporterMetricDataPointInflight struct {
|
|
metric.Int64UpDownCounter
|
|
}
|
|
|
|
// NewSDKExporterMetricDataPointInflight returns a new
|
|
// SDKExporterMetricDataPointInflight instrument.
|
|
func NewSDKExporterMetricDataPointInflight(
|
|
m metric.Meter,
|
|
opt ...metric.Int64UpDownCounterOption,
|
|
) (SDKExporterMetricDataPointInflight, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterMetricDataPointInflight{noop.Int64UpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64UpDownCounter(
|
|
"otel.sdk.exporter.metric_data_point.inflight",
|
|
append([]metric.Int64UpDownCounterOption{
|
|
metric.WithDescription("The number of metric data points which were passed to the exporter, but that have not been exported yet (neither successful, nor failed)."),
|
|
metric.WithUnit("{data_point}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterMetricDataPointInflight{noop.Int64UpDownCounter{}}, err
|
|
}
|
|
return SDKExporterMetricDataPointInflight{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterMetricDataPointInflight) Inst() metric.Int64UpDownCounter {
|
|
return m.Int64UpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterMetricDataPointInflight) Name() string {
|
|
return "otel.sdk.exporter.metric_data_point.inflight"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterMetricDataPointInflight) Unit() string {
|
|
return "{data_point}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterMetricDataPointInflight) Description() string {
|
|
return "The number of metric data points which were passed to the exporter, but that have not been exported yet (neither successful, nor failed)."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
func (m SDKExporterMetricDataPointInflight) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
func (m SDKExporterMetricDataPointInflight) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterMetricDataPointInflight) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterMetricDataPointInflight) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterMetricDataPointInflight) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterMetricDataPointInflight) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKExporterOperationDuration is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.exporter.operation.duration" semantic conventions.
|
|
// It represents the duration of exporting a batch of telemetry records.
|
|
type SDKExporterOperationDuration struct {
|
|
metric.Float64Histogram
|
|
}
|
|
|
|
// NewSDKExporterOperationDuration returns a new SDKExporterOperationDuration
|
|
// instrument.
|
|
func NewSDKExporterOperationDuration(
|
|
m metric.Meter,
|
|
opt ...metric.Float64HistogramOption,
|
|
) (SDKExporterOperationDuration, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterOperationDuration{noop.Float64Histogram{}}, nil
|
|
}
|
|
|
|
i, err := m.Float64Histogram(
|
|
"otel.sdk.exporter.operation.duration",
|
|
append([]metric.Float64HistogramOption{
|
|
metric.WithDescription("The duration of exporting a batch of telemetry records."),
|
|
metric.WithUnit("s"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterOperationDuration{noop.Float64Histogram{}}, err
|
|
}
|
|
return SDKExporterOperationDuration{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterOperationDuration) Inst() metric.Float64Histogram {
|
|
return m.Float64Histogram
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterOperationDuration) Name() string {
|
|
return "otel.sdk.exporter.operation.duration"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterOperationDuration) Unit() string {
|
|
return "s"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterOperationDuration) Description() string {
|
|
return "The duration of exporting a batch of telemetry records."
|
|
}
|
|
|
|
// Record records val to the current distribution for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// This metric defines successful operations using the full success definitions
|
|
// for [http]
|
|
// and [grpc]. Anything else is defined as an unsuccessful operation. For
|
|
// successful
|
|
// operations, `error.type` MUST NOT be set. For unsuccessful export operations,
|
|
// `error.type` MUST contain a relevant failure cause.
|
|
//
|
|
// [http]: https://github.com/open-telemetry/opentelemetry-proto/blob/v1.5.0/docs/specification.md#full-success-1
|
|
// [grpc]: https://github.com/open-telemetry/opentelemetry-proto/blob/v1.5.0/docs/specification.md#full-success
|
|
func (m SDKExporterOperationDuration) Record(
|
|
ctx context.Context,
|
|
val float64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Float64Histogram.Record(ctx, val)
|
|
return
|
|
}
|
|
|
|
o := recOptPool.Get().(*[]metric.RecordOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
recOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Float64Histogram.Record(ctx, val, *o...)
|
|
}
|
|
|
|
// RecordSet records val to the current distribution for set.
|
|
//
|
|
// This metric defines successful operations using the full success definitions
|
|
// for [http]
|
|
// and [grpc]. Anything else is defined as an unsuccessful operation. For
|
|
// successful
|
|
// operations, `error.type` MUST NOT be set. For unsuccessful export operations,
|
|
// `error.type` MUST contain a relevant failure cause.
|
|
//
|
|
// [http]: https://github.com/open-telemetry/opentelemetry-proto/blob/v1.5.0/docs/specification.md#full-success-1
|
|
// [grpc]: https://github.com/open-telemetry/opentelemetry-proto/blob/v1.5.0/docs/specification.md#full-success
|
|
func (m SDKExporterOperationDuration) RecordSet(ctx context.Context, val float64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Float64Histogram.Record(ctx, val)
|
|
}
|
|
|
|
o := recOptPool.Get().(*[]metric.RecordOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
recOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Float64Histogram.Record(ctx, val, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents the describes a class of error the operation ended
|
|
// with.
|
|
func (SDKExporterOperationDuration) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrHTTPResponseStatusCode returns an optional attribute for the
|
|
// "http.response.status_code" semantic convention. It represents the HTTP status
|
|
// code of the last HTTP request performed in scope of this export call.
|
|
func (SDKExporterOperationDuration) AttrHTTPResponseStatusCode(val int) attribute.KeyValue {
|
|
return attribute.Int("http.response.status_code", val)
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterOperationDuration) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterOperationDuration) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrRPCGRPCStatusCode returns an optional attribute for the
|
|
// "rpc.grpc.status_code" semantic convention. It represents the gRPC status code
|
|
// of the last gRPC requests performed in scope of this export call.
|
|
func (SDKExporterOperationDuration) AttrRPCGRPCStatusCode(val RPCGRPCStatusCodeAttr) attribute.KeyValue {
|
|
return attribute.Int64("rpc.grpc.status_code", int64(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterOperationDuration) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterOperationDuration) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKExporterSpanExported is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.exporter.span.exported" semantic conventions. It
|
|
// represents the number of spans for which the export has finished, either
|
|
// successful or failed.
|
|
type SDKExporterSpanExported struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKExporterSpanExported returns a new SDKExporterSpanExported instrument.
|
|
func NewSDKExporterSpanExported(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKExporterSpanExported, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterSpanExported{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.exporter.span.exported",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of spans for which the export has finished, either successful or failed."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterSpanExported{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKExporterSpanExported{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterSpanExported) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterSpanExported) Name() string {
|
|
return "otel.sdk.exporter.span.exported"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterSpanExported) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterSpanExported) Description() string {
|
|
return "The number of spans for which the export has finished, either successful or failed."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
// For exporters with partial success semantics (e.g. OTLP with `rejected_spans`
|
|
// ), rejected spans MUST count as failed and only non-rejected spans count as
|
|
// success.
|
|
// If no rejection reason is available, `rejected` SHOULD be used as value for
|
|
// `error.type`.
|
|
func (m SDKExporterSpanExported) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
// For exporters with partial success semantics (e.g. OTLP with `rejected_spans`
|
|
// ), rejected spans MUST count as failed and only non-rejected spans count as
|
|
// success.
|
|
// If no rejection reason is available, `rejected` SHOULD be used as value for
|
|
// `error.type`.
|
|
func (m SDKExporterSpanExported) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents the describes a class of error the operation ended
|
|
// with.
|
|
func (SDKExporterSpanExported) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterSpanExported) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterSpanExported) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterSpanExported) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterSpanExported) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKExporterSpanInflight is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.exporter.span.inflight" semantic conventions. It
|
|
// represents the number of spans which were passed to the exporter, but that
|
|
// have not been exported yet (neither successful, nor failed).
|
|
type SDKExporterSpanInflight struct {
|
|
metric.Int64UpDownCounter
|
|
}
|
|
|
|
// NewSDKExporterSpanInflight returns a new SDKExporterSpanInflight instrument.
|
|
func NewSDKExporterSpanInflight(
|
|
m metric.Meter,
|
|
opt ...metric.Int64UpDownCounterOption,
|
|
) (SDKExporterSpanInflight, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKExporterSpanInflight{noop.Int64UpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64UpDownCounter(
|
|
"otel.sdk.exporter.span.inflight",
|
|
append([]metric.Int64UpDownCounterOption{
|
|
metric.WithDescription("The number of spans which were passed to the exporter, but that have not been exported yet (neither successful, nor failed)."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKExporterSpanInflight{noop.Int64UpDownCounter{}}, err
|
|
}
|
|
return SDKExporterSpanInflight{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKExporterSpanInflight) Inst() metric.Int64UpDownCounter {
|
|
return m.Int64UpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKExporterSpanInflight) Name() string {
|
|
return "otel.sdk.exporter.span.inflight"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKExporterSpanInflight) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKExporterSpanInflight) Description() string {
|
|
return "The number of spans which were passed to the exporter, but that have not been exported yet (neither successful, nor failed)."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
func (m SDKExporterSpanInflight) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful exports, `error.type` MUST NOT be set. For failed exports,
|
|
// `error.type` MUST contain the failure cause.
|
|
func (m SDKExporterSpanInflight) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKExporterSpanInflight) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKExporterSpanInflight) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// AttrServerAddress returns an optional attribute for the "server.address"
|
|
// semantic convention. It represents the server domain name if available without
|
|
// reverse DNS lookup; otherwise, IP address or Unix domain socket name.
|
|
func (SDKExporterSpanInflight) AttrServerAddress(val string) attribute.KeyValue {
|
|
return attribute.String("server.address", val)
|
|
}
|
|
|
|
// AttrServerPort returns an optional attribute for the "server.port" semantic
|
|
// convention. It represents the server port number.
|
|
func (SDKExporterSpanInflight) AttrServerPort(val int) attribute.KeyValue {
|
|
return attribute.Int("server.port", val)
|
|
}
|
|
|
|
// SDKLogCreated is an instrument used to record metric values conforming to the
|
|
// "otel.sdk.log.created" semantic conventions. It represents the number of logs
|
|
// submitted to enabled SDK Loggers.
|
|
type SDKLogCreated struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKLogCreated returns a new SDKLogCreated instrument.
|
|
func NewSDKLogCreated(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKLogCreated, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKLogCreated{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.log.created",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of logs submitted to enabled SDK Loggers."),
|
|
metric.WithUnit("{log_record}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKLogCreated{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKLogCreated{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKLogCreated) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKLogCreated) Name() string {
|
|
return "otel.sdk.log.created"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKLogCreated) Unit() string {
|
|
return "{log_record}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKLogCreated) Description() string {
|
|
return "The number of logs submitted to enabled SDK Loggers."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
func (m SDKLogCreated) Add(ctx context.Context, incr int64, attrs ...attribute.KeyValue) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributes(attrs...))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
func (m SDKLogCreated) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// SDKMetricReaderCollectionDuration is an instrument used to record metric
|
|
// values conforming to the "otel.sdk.metric_reader.collection.duration" semantic
|
|
// conventions. It represents the duration of the collect operation of the metric
|
|
// reader.
|
|
type SDKMetricReaderCollectionDuration struct {
|
|
metric.Float64Histogram
|
|
}
|
|
|
|
// NewSDKMetricReaderCollectionDuration returns a new
|
|
// SDKMetricReaderCollectionDuration instrument.
|
|
func NewSDKMetricReaderCollectionDuration(
|
|
m metric.Meter,
|
|
opt ...metric.Float64HistogramOption,
|
|
) (SDKMetricReaderCollectionDuration, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKMetricReaderCollectionDuration{noop.Float64Histogram{}}, nil
|
|
}
|
|
|
|
i, err := m.Float64Histogram(
|
|
"otel.sdk.metric_reader.collection.duration",
|
|
append([]metric.Float64HistogramOption{
|
|
metric.WithDescription("The duration of the collect operation of the metric reader."),
|
|
metric.WithUnit("s"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKMetricReaderCollectionDuration{noop.Float64Histogram{}}, err
|
|
}
|
|
return SDKMetricReaderCollectionDuration{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKMetricReaderCollectionDuration) Inst() metric.Float64Histogram {
|
|
return m.Float64Histogram
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKMetricReaderCollectionDuration) Name() string {
|
|
return "otel.sdk.metric_reader.collection.duration"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKMetricReaderCollectionDuration) Unit() string {
|
|
return "s"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKMetricReaderCollectionDuration) Description() string {
|
|
return "The duration of the collect operation of the metric reader."
|
|
}
|
|
|
|
// Record records val to the current distribution for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful collections, `error.type` MUST NOT be set. For failed
|
|
// collections, `error.type` SHOULD contain the failure cause.
|
|
// It can happen that metrics collection is successful for some MetricProducers,
|
|
// while others fail. In that case `error.type` SHOULD be set to any of the
|
|
// failure causes.
|
|
func (m SDKMetricReaderCollectionDuration) Record(
|
|
ctx context.Context,
|
|
val float64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Float64Histogram.Record(ctx, val)
|
|
return
|
|
}
|
|
|
|
o := recOptPool.Get().(*[]metric.RecordOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
recOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Float64Histogram.Record(ctx, val, *o...)
|
|
}
|
|
|
|
// RecordSet records val to the current distribution for set.
|
|
//
|
|
// For successful collections, `error.type` MUST NOT be set. For failed
|
|
// collections, `error.type` SHOULD contain the failure cause.
|
|
// It can happen that metrics collection is successful for some MetricProducers,
|
|
// while others fail. In that case `error.type` SHOULD be set to any of the
|
|
// failure causes.
|
|
func (m SDKMetricReaderCollectionDuration) RecordSet(ctx context.Context, val float64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Float64Histogram.Record(ctx, val)
|
|
}
|
|
|
|
o := recOptPool.Get().(*[]metric.RecordOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
recOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Float64Histogram.Record(ctx, val, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents the describes a class of error the operation ended
|
|
// with.
|
|
func (SDKMetricReaderCollectionDuration) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKMetricReaderCollectionDuration) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKMetricReaderCollectionDuration) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKProcessorLogProcessed is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.processor.log.processed" semantic conventions. It
|
|
// represents the number of log records for which the processing has finished,
|
|
// either successful or failed.
|
|
type SDKProcessorLogProcessed struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKProcessorLogProcessed returns a new SDKProcessorLogProcessed instrument.
|
|
func NewSDKProcessorLogProcessed(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKProcessorLogProcessed, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKProcessorLogProcessed{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.processor.log.processed",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of log records for which the processing has finished, either successful or failed."),
|
|
metric.WithUnit("{log_record}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKProcessorLogProcessed{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKProcessorLogProcessed{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKProcessorLogProcessed) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKProcessorLogProcessed) Name() string {
|
|
return "otel.sdk.processor.log.processed"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKProcessorLogProcessed) Unit() string {
|
|
return "{log_record}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKProcessorLogProcessed) Description() string {
|
|
return "The number of log records for which the processing has finished, either successful or failed."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful processing, `error.type` MUST NOT be set. For failed
|
|
// processing, `error.type` MUST contain the failure cause.
|
|
// For the SDK Simple and Batching Log Record Processor a log record is
|
|
// considered to be processed already when it has been submitted to the exporter,
|
|
// not when the corresponding export call has finished.
|
|
func (m SDKProcessorLogProcessed) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful processing, `error.type` MUST NOT be set. For failed
|
|
// processing, `error.type` MUST contain the failure cause.
|
|
// For the SDK Simple and Batching Log Record Processor a log record is
|
|
// considered to be processed already when it has been submitted to the exporter,
|
|
// not when the corresponding export call has finished.
|
|
func (m SDKProcessorLogProcessed) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents a low-cardinality description of the failure reason.
|
|
// SDK Batching Log Record Processors MUST use `queue_full` for log records
|
|
// dropped due to a full queue.
|
|
func (SDKProcessorLogProcessed) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKProcessorLogProcessed) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKProcessorLogProcessed) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKProcessorLogQueueCapacity is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.processor.log.queue.capacity" semantic
|
|
// conventions. It represents the maximum number of log records the queue of a
|
|
// given instance of an SDK Log Record processor can hold.
|
|
type SDKProcessorLogQueueCapacity struct {
|
|
metric.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// NewSDKProcessorLogQueueCapacity returns a new SDKProcessorLogQueueCapacity
|
|
// instrument.
|
|
func NewSDKProcessorLogQueueCapacity(
|
|
m metric.Meter,
|
|
opt ...metric.Int64ObservableUpDownCounterOption,
|
|
) (SDKProcessorLogQueueCapacity, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKProcessorLogQueueCapacity{noop.Int64ObservableUpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64ObservableUpDownCounter(
|
|
"otel.sdk.processor.log.queue.capacity",
|
|
append([]metric.Int64ObservableUpDownCounterOption{
|
|
metric.WithDescription("The maximum number of log records the queue of a given instance of an SDK Log Record processor can hold."),
|
|
metric.WithUnit("{log_record}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKProcessorLogQueueCapacity{noop.Int64ObservableUpDownCounter{}}, err
|
|
}
|
|
return SDKProcessorLogQueueCapacity{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKProcessorLogQueueCapacity) Inst() metric.Int64ObservableUpDownCounter {
|
|
return m.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKProcessorLogQueueCapacity) Name() string {
|
|
return "otel.sdk.processor.log.queue.capacity"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKProcessorLogQueueCapacity) Unit() string {
|
|
return "{log_record}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKProcessorLogQueueCapacity) Description() string {
|
|
return "The maximum number of log records the queue of a given instance of an SDK Log Record processor can hold."
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKProcessorLogQueueCapacity) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKProcessorLogQueueCapacity) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKProcessorLogQueueSize is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.processor.log.queue.size" semantic conventions. It
|
|
// represents the number of log records in the queue of a given instance of an
|
|
// SDK log processor.
|
|
type SDKProcessorLogQueueSize struct {
|
|
metric.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// NewSDKProcessorLogQueueSize returns a new SDKProcessorLogQueueSize instrument.
|
|
func NewSDKProcessorLogQueueSize(
|
|
m metric.Meter,
|
|
opt ...metric.Int64ObservableUpDownCounterOption,
|
|
) (SDKProcessorLogQueueSize, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKProcessorLogQueueSize{noop.Int64ObservableUpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64ObservableUpDownCounter(
|
|
"otel.sdk.processor.log.queue.size",
|
|
append([]metric.Int64ObservableUpDownCounterOption{
|
|
metric.WithDescription("The number of log records in the queue of a given instance of an SDK log processor."),
|
|
metric.WithUnit("{log_record}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKProcessorLogQueueSize{noop.Int64ObservableUpDownCounter{}}, err
|
|
}
|
|
return SDKProcessorLogQueueSize{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKProcessorLogQueueSize) Inst() metric.Int64ObservableUpDownCounter {
|
|
return m.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKProcessorLogQueueSize) Name() string {
|
|
return "otel.sdk.processor.log.queue.size"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKProcessorLogQueueSize) Unit() string {
|
|
return "{log_record}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKProcessorLogQueueSize) Description() string {
|
|
return "The number of log records in the queue of a given instance of an SDK log processor."
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKProcessorLogQueueSize) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKProcessorLogQueueSize) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKProcessorSpanProcessed is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.processor.span.processed" semantic conventions. It
|
|
// represents the number of spans for which the processing has finished, either
|
|
// successful or failed.
|
|
type SDKProcessorSpanProcessed struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKProcessorSpanProcessed returns a new SDKProcessorSpanProcessed
|
|
// instrument.
|
|
func NewSDKProcessorSpanProcessed(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKProcessorSpanProcessed, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKProcessorSpanProcessed{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.processor.span.processed",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of spans for which the processing has finished, either successful or failed."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKProcessorSpanProcessed{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKProcessorSpanProcessed{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKProcessorSpanProcessed) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKProcessorSpanProcessed) Name() string {
|
|
return "otel.sdk.processor.span.processed"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKProcessorSpanProcessed) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKProcessorSpanProcessed) Description() string {
|
|
return "The number of spans for which the processing has finished, either successful or failed."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// For successful processing, `error.type` MUST NOT be set. For failed
|
|
// processing, `error.type` MUST contain the failure cause.
|
|
// For the SDK Simple and Batching Span Processor a span is considered to be
|
|
// processed already when it has been submitted to the exporter, not when the
|
|
// corresponding export call has finished.
|
|
func (m SDKProcessorSpanProcessed) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// For successful processing, `error.type` MUST NOT be set. For failed
|
|
// processing, `error.type` MUST contain the failure cause.
|
|
// For the SDK Simple and Batching Span Processor a span is considered to be
|
|
// processed already when it has been submitted to the exporter, not when the
|
|
// corresponding export call has finished.
|
|
func (m SDKProcessorSpanProcessed) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrErrorType returns an optional attribute for the "error.type" semantic
|
|
// convention. It represents a low-cardinality description of the failure reason.
|
|
// SDK Batching Span Processors MUST use `queue_full` for spans dropped due to a
|
|
// full queue.
|
|
func (SDKProcessorSpanProcessed) AttrErrorType(val ErrorTypeAttr) attribute.KeyValue {
|
|
return attribute.String("error.type", string(val))
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKProcessorSpanProcessed) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKProcessorSpanProcessed) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKProcessorSpanQueueCapacity is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.processor.span.queue.capacity" semantic
|
|
// conventions. It represents the maximum number of spans the queue of a given
|
|
// instance of an SDK span processor can hold.
|
|
type SDKProcessorSpanQueueCapacity struct {
|
|
metric.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// NewSDKProcessorSpanQueueCapacity returns a new SDKProcessorSpanQueueCapacity
|
|
// instrument.
|
|
func NewSDKProcessorSpanQueueCapacity(
|
|
m metric.Meter,
|
|
opt ...metric.Int64ObservableUpDownCounterOption,
|
|
) (SDKProcessorSpanQueueCapacity, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKProcessorSpanQueueCapacity{noop.Int64ObservableUpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64ObservableUpDownCounter(
|
|
"otel.sdk.processor.span.queue.capacity",
|
|
append([]metric.Int64ObservableUpDownCounterOption{
|
|
metric.WithDescription("The maximum number of spans the queue of a given instance of an SDK span processor can hold."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKProcessorSpanQueueCapacity{noop.Int64ObservableUpDownCounter{}}, err
|
|
}
|
|
return SDKProcessorSpanQueueCapacity{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKProcessorSpanQueueCapacity) Inst() metric.Int64ObservableUpDownCounter {
|
|
return m.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKProcessorSpanQueueCapacity) Name() string {
|
|
return "otel.sdk.processor.span.queue.capacity"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKProcessorSpanQueueCapacity) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKProcessorSpanQueueCapacity) Description() string {
|
|
return "The maximum number of spans the queue of a given instance of an SDK span processor can hold."
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKProcessorSpanQueueCapacity) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKProcessorSpanQueueCapacity) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKProcessorSpanQueueSize is an instrument used to record metric values
|
|
// conforming to the "otel.sdk.processor.span.queue.size" semantic conventions.
|
|
// It represents the number of spans in the queue of a given instance of an SDK
|
|
// span processor.
|
|
type SDKProcessorSpanQueueSize struct {
|
|
metric.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// NewSDKProcessorSpanQueueSize returns a new SDKProcessorSpanQueueSize
|
|
// instrument.
|
|
func NewSDKProcessorSpanQueueSize(
|
|
m metric.Meter,
|
|
opt ...metric.Int64ObservableUpDownCounterOption,
|
|
) (SDKProcessorSpanQueueSize, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKProcessorSpanQueueSize{noop.Int64ObservableUpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64ObservableUpDownCounter(
|
|
"otel.sdk.processor.span.queue.size",
|
|
append([]metric.Int64ObservableUpDownCounterOption{
|
|
metric.WithDescription("The number of spans in the queue of a given instance of an SDK span processor."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKProcessorSpanQueueSize{noop.Int64ObservableUpDownCounter{}}, err
|
|
}
|
|
return SDKProcessorSpanQueueSize{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKProcessorSpanQueueSize) Inst() metric.Int64ObservableUpDownCounter {
|
|
return m.Int64ObservableUpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKProcessorSpanQueueSize) Name() string {
|
|
return "otel.sdk.processor.span.queue.size"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKProcessorSpanQueueSize) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKProcessorSpanQueueSize) Description() string {
|
|
return "The number of spans in the queue of a given instance of an SDK span processor."
|
|
}
|
|
|
|
// AttrComponentName returns an optional attribute for the "otel.component.name"
|
|
// semantic convention. It represents a name uniquely identifying the instance of
|
|
// the OpenTelemetry component within its containing SDK instance.
|
|
func (SDKProcessorSpanQueueSize) AttrComponentName(val string) attribute.KeyValue {
|
|
return attribute.String("otel.component.name", val)
|
|
}
|
|
|
|
// AttrComponentType returns an optional attribute for the "otel.component.type"
|
|
// semantic convention. It represents a name identifying the type of the
|
|
// OpenTelemetry component.
|
|
func (SDKProcessorSpanQueueSize) AttrComponentType(val ComponentTypeAttr) attribute.KeyValue {
|
|
return attribute.String("otel.component.type", string(val))
|
|
}
|
|
|
|
// SDKSpanLive is an instrument used to record metric values conforming to the
|
|
// "otel.sdk.span.live" semantic conventions. It represents the number of created
|
|
// spans with `recording=true` for which the end operation has not been called
|
|
// yet.
|
|
type SDKSpanLive struct {
|
|
metric.Int64UpDownCounter
|
|
}
|
|
|
|
// NewSDKSpanLive returns a new SDKSpanLive instrument.
|
|
func NewSDKSpanLive(
|
|
m metric.Meter,
|
|
opt ...metric.Int64UpDownCounterOption,
|
|
) (SDKSpanLive, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKSpanLive{noop.Int64UpDownCounter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64UpDownCounter(
|
|
"otel.sdk.span.live",
|
|
append([]metric.Int64UpDownCounterOption{
|
|
metric.WithDescription("The number of created spans with `recording=true` for which the end operation has not been called yet."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKSpanLive{noop.Int64UpDownCounter{}}, err
|
|
}
|
|
return SDKSpanLive{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKSpanLive) Inst() metric.Int64UpDownCounter {
|
|
return m.Int64UpDownCounter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKSpanLive) Name() string {
|
|
return "otel.sdk.span.live"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKSpanLive) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKSpanLive) Description() string {
|
|
return "The number of created spans with `recording=true` for which the end operation has not been called yet."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
func (m SDKSpanLive) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
func (m SDKSpanLive) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64UpDownCounter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64UpDownCounter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrSpanSamplingResult returns an optional attribute for the
|
|
// "otel.span.sampling_result" semantic convention. It represents the result
|
|
// value of the sampler for this span.
|
|
func (SDKSpanLive) AttrSpanSamplingResult(val SpanSamplingResultAttr) attribute.KeyValue {
|
|
return attribute.String("otel.span.sampling_result", string(val))
|
|
}
|
|
|
|
// SDKSpanStarted is an instrument used to record metric values conforming to the
|
|
// "otel.sdk.span.started" semantic conventions. It represents the number of
|
|
// created spans.
|
|
type SDKSpanStarted struct {
|
|
metric.Int64Counter
|
|
}
|
|
|
|
// NewSDKSpanStarted returns a new SDKSpanStarted instrument.
|
|
func NewSDKSpanStarted(
|
|
m metric.Meter,
|
|
opt ...metric.Int64CounterOption,
|
|
) (SDKSpanStarted, error) {
|
|
// Check if the meter is nil.
|
|
if m == nil {
|
|
return SDKSpanStarted{noop.Int64Counter{}}, nil
|
|
}
|
|
|
|
i, err := m.Int64Counter(
|
|
"otel.sdk.span.started",
|
|
append([]metric.Int64CounterOption{
|
|
metric.WithDescription("The number of created spans."),
|
|
metric.WithUnit("{span}"),
|
|
}, opt...)...,
|
|
)
|
|
if err != nil {
|
|
return SDKSpanStarted{noop.Int64Counter{}}, err
|
|
}
|
|
return SDKSpanStarted{i}, nil
|
|
}
|
|
|
|
// Inst returns the underlying metric instrument.
|
|
func (m SDKSpanStarted) Inst() metric.Int64Counter {
|
|
return m.Int64Counter
|
|
}
|
|
|
|
// Name returns the semantic convention name of the instrument.
|
|
func (SDKSpanStarted) Name() string {
|
|
return "otel.sdk.span.started"
|
|
}
|
|
|
|
// Unit returns the semantic convention unit of the instrument
|
|
func (SDKSpanStarted) Unit() string {
|
|
return "{span}"
|
|
}
|
|
|
|
// Description returns the semantic convention description of the instrument
|
|
func (SDKSpanStarted) Description() string {
|
|
return "The number of created spans."
|
|
}
|
|
|
|
// Add adds incr to the existing count for attrs.
|
|
//
|
|
// All additional attrs passed are included in the recorded value.
|
|
//
|
|
// Implementations MUST record this metric for all spans, even for non-recording
|
|
// ones.
|
|
func (m SDKSpanStarted) Add(
|
|
ctx context.Context,
|
|
incr int64,
|
|
attrs ...attribute.KeyValue,
|
|
) {
|
|
if len(attrs) == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(
|
|
*o,
|
|
metric.WithAttributes(
|
|
attrs...,
|
|
),
|
|
)
|
|
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AddSet adds incr to the existing count for set.
|
|
//
|
|
// Implementations MUST record this metric for all spans, even for non-recording
|
|
// ones.
|
|
func (m SDKSpanStarted) AddSet(ctx context.Context, incr int64, set attribute.Set) {
|
|
if set.Len() == 0 {
|
|
m.Int64Counter.Add(ctx, incr)
|
|
return
|
|
}
|
|
|
|
o := addOptPool.Get().(*[]metric.AddOption)
|
|
defer func() {
|
|
*o = (*o)[:0]
|
|
addOptPool.Put(o)
|
|
}()
|
|
|
|
*o = append(*o, metric.WithAttributeSet(set))
|
|
m.Int64Counter.Add(ctx, incr, *o...)
|
|
}
|
|
|
|
// AttrSpanParentOrigin returns an optional attribute for the
|
|
// "otel.span.parent.origin" semantic convention. It represents the determines
|
|
// whether the span has a parent span, and if so, [whether it is a remote parent]
|
|
// .
|
|
//
|
|
// [whether it is a remote parent]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremote
|
|
func (SDKSpanStarted) AttrSpanParentOrigin(val SpanParentOriginAttr) attribute.KeyValue {
|
|
return attribute.String("otel.span.parent.origin", string(val))
|
|
}
|
|
|
|
// AttrSpanSamplingResult returns an optional attribute for the
|
|
// "otel.span.sampling_result" semantic convention. It represents the result
|
|
// value of the sampler for this span.
|
|
func (SDKSpanStarted) AttrSpanSamplingResult(val SpanSamplingResultAttr) attribute.KeyValue {
|
|
return attribute.String("otel.span.sampling_result", string(val))
|
|
} |