diff --git a/enrichments/trace/internal/elastic/resource.go b/enrichments/trace/internal/elastic/resource.go index 964cd14..5c4dc0c 100644 --- a/enrichments/trace/internal/elastic/resource.go +++ b/enrichments/trace/internal/elastic/resource.go @@ -23,8 +23,8 @@ import ( "github.com/elastic/opentelemetry-lib/elasticattr" "github.com/elastic/opentelemetry-lib/enrichments/trace/config" "go.opentelemetry.io/collector/pdata/pcommon" - semconv25 "go.opentelemetry.io/collector/semconv/v1.25.0" - semconv "go.opentelemetry.io/collector/semconv/v1.27.0" + semconv25 "go.opentelemetry.io/otel/semconv/v1.25.0" + semconv "go.opentelemetry.io/otel/semconv/v1.27.0" ) // EnrichResource derives and adds Elastic specific resource attributes. @@ -50,23 +50,23 @@ type resourceEnrichmentContext struct { func (s *resourceEnrichmentContext) Enrich(resource pcommon.Resource, cfg config.ResourceConfig) { resource.Attributes().Range(func(k string, v pcommon.Value) bool { switch k { - case semconv.AttributeHostName: + case string(semconv.HostNameKey): s.hostName = v.Str() - case semconv.AttributeK8SNodeName: + case string(semconv.K8SNodeNameKey): s.k8sNodeName = v.Str() - case semconv.AttributeTelemetrySDKName: + case string(semconv.TelemetrySDKNameKey): s.telemetrySDKName = v.Str() - case semconv.AttributeTelemetrySDKLanguage: + case string(semconv.TelemetrySDKLanguageKey): s.telemetrySDKLanguage = v.Str() - case semconv.AttributeTelemetrySDKVersion: + case string(semconv.TelemetrySDKVersionKey): s.telemetrySDKVersion = v.Str() - case semconv.AttributeTelemetryDistroName: + case string(semconv.TelemetryDistroNameKey): s.telemetryDistroName = v.Str() - case semconv.AttributeTelemetryDistroVersion: + case string(semconv.TelemetryDistroVersionKey): s.telemetryDistroVersion = v.Str() - case semconv25.AttributeDeploymentEnvironment: + case string(semconv25.DeploymentEnvironmentKey): s.deploymentEnvironment = v.Str() - case semconv.AttributeDeploymentEnvironmentName: + case string(semconv.DeploymentEnvironmentNameKey): s.deploymentEnvironmentName = v.Str() } return true @@ -92,7 +92,10 @@ func (s *resourceEnrichmentContext) Enrich(resource pcommon.Resource, cfg config // we duplicate the value and also send it with the old field name to make the alias work. func (s *resourceEnrichmentContext) setDeploymentEnvironment(resource pcommon.Resource) { if s.deploymentEnvironmentName != "" && s.deploymentEnvironment == "" { - resource.Attributes().PutStr(semconv25.AttributeDeploymentEnvironment, s.deploymentEnvironmentName) + resource.Attributes().PutStr( + string(semconv25.DeploymentEnvironmentKey), + s.deploymentEnvironmentName, + ) } } @@ -146,5 +149,8 @@ func (s *resourceEnrichmentContext) overrideHostNameWithK8sNodeName(resource pco // and k8s node name are set then host name is overridden as this is // considered an invalid configuration/smell and k8s node name is // given higher preference. - resource.Attributes().PutStr(semconv.AttributeHostName, s.k8sNodeName) + resource.Attributes().PutStr( + string(semconv.HostNameKey), + s.k8sNodeName, + ) } diff --git a/enrichments/trace/internal/elastic/resource_test.go b/enrichments/trace/internal/elastic/resource_test.go index 2adcaf1..7ec70ac 100644 --- a/enrichments/trace/internal/elastic/resource_test.go +++ b/enrichments/trace/internal/elastic/resource_test.go @@ -25,8 +25,8 @@ import ( "github.com/google/go-cmp/cmp" "github.com/stretchr/testify/assert" "go.opentelemetry.io/collector/pdata/pcommon" - semconv25 "go.opentelemetry.io/collector/semconv/v1.25.0" - semconv "go.opentelemetry.io/collector/semconv/v1.27.0" + semconv25 "go.opentelemetry.io/otel/semconv/v1.25.0" + semconv "go.opentelemetry.io/otel/semconv/v1.27.0" ) func TestResourceEnrich(t *testing.T) { @@ -54,7 +54,7 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") return res }(), config: config.Enabled().Resource, @@ -67,8 +67,8 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_distro_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") - res.Attributes().PutStr(semconv.AttributeTelemetryDistroName, "elastic") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") + res.Attributes().PutStr(string(semconv.TelemetryDistroNameKey), "elastic") return res }(), config: config.Enabled().Resource, @@ -81,9 +81,9 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_distro_lang_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") - res.Attributes().PutStr(semconv.AttributeTelemetrySDKLanguage, "cpp") - res.Attributes().PutStr(semconv.AttributeTelemetryDistroName, "elastic") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") + res.Attributes().PutStr(string(semconv.TelemetrySDKLanguageKey), "cpp") + res.Attributes().PutStr(string(semconv.TelemetryDistroNameKey), "elastic") return res }(), config: config.Enabled().Resource, @@ -96,7 +96,7 @@ func TestResourceEnrich(t *testing.T) { name: "lang_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKLanguage, "cpp") + res.Attributes().PutStr(string(semconv.TelemetrySDKLanguageKey), "cpp") return res }(), config: config.Enabled().Resource, @@ -109,8 +109,8 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_lang_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") - res.Attributes().PutStr(semconv.AttributeTelemetrySDKLanguage, "cpp") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") + res.Attributes().PutStr(string(semconv.TelemetrySDKLanguageKey), "cpp") return res }(), config: config.Enabled().Resource, @@ -123,8 +123,8 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_sdkver_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") - res.Attributes().PutStr(semconv.AttributeTelemetrySDKVersion, "9.999.9") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") + res.Attributes().PutStr(string(semconv.TelemetrySDKVersionKey), "9.999.9") return res }(), config: config.Enabled().Resource, @@ -137,9 +137,9 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_sdkver_distroname_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") - res.Attributes().PutStr(semconv.AttributeTelemetrySDKVersion, "9.999.9") - res.Attributes().PutStr(semconv.AttributeTelemetryDistroName, "elastic") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") + res.Attributes().PutStr(string(semconv.TelemetrySDKVersionKey), "9.999.9") + res.Attributes().PutStr(string(semconv.TelemetryDistroNameKey), "elastic") return res }(), config: config.Enabled().Resource, @@ -152,10 +152,10 @@ func TestResourceEnrich(t *testing.T) { name: "sdkname_sdkver_distroname_distrover_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeTelemetrySDKName, "customflavor") - res.Attributes().PutStr(semconv.AttributeTelemetrySDKVersion, "9.999.9") - res.Attributes().PutStr(semconv.AttributeTelemetryDistroName, "elastic") - res.Attributes().PutStr(semconv.AttributeTelemetryDistroVersion, "1.2.3") + res.Attributes().PutStr(string(semconv.TelemetrySDKNameKey), "customflavor") + res.Attributes().PutStr(string(semconv.TelemetrySDKVersionKey), "9.999.9") + res.Attributes().PutStr(string(semconv.TelemetryDistroNameKey), "elastic") + res.Attributes().PutStr(string(semconv.TelemetryDistroVersionKey), "1.2.3") return res }(), config: config.Enabled().Resource, @@ -168,31 +168,31 @@ func TestResourceEnrich(t *testing.T) { name: "host_name_override_with_k8s_node_name", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeHostName, "test-host") - res.Attributes().PutStr(semconv.AttributeK8SNodeName, "k8s-node") + res.Attributes().PutStr(string(semconv.HostNameKey), "test-host") + res.Attributes().PutStr(string(semconv.K8SNodeNameKey), "k8s-node") return res }(), config: config.Enabled().Resource, enrichedAttrs: map[string]any{ - semconv.AttributeHostName: "k8s-node", - semconv.AttributeK8SNodeName: "k8s-node", - elasticattr.AgentName: "otlp", - elasticattr.AgentVersion: "unknown", + string(semconv.HostNameKey): "k8s-node", + string(semconv.K8SNodeNameKey): "k8s-node", + elasticattr.AgentName: "otlp", + elasticattr.AgentVersion: "unknown", }, }, { name: "host_name_if_empty_set_from_k8s_node_name", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeK8SNodeName, "k8s-node") + res.Attributes().PutStr(string(semconv.K8SNodeNameKey), "k8s-node") return res }(), config: config.Enabled().Resource, enrichedAttrs: map[string]any{ - semconv.AttributeHostName: "k8s-node", - semconv.AttributeK8SNodeName: "k8s-node", - elasticattr.AgentName: "otlp", - elasticattr.AgentVersion: "unknown", + string(semconv.HostNameKey): "k8s-node", + string(semconv.K8SNodeNameKey): "k8s-node", + elasticattr.AgentName: "otlp", + elasticattr.AgentVersion: "unknown", }, }, { @@ -200,14 +200,14 @@ func TestResourceEnrich(t *testing.T) { name: "deployment_environment_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv25.AttributeDeploymentEnvironment, "prod") + res.Attributes().PutStr(string(semconv25.DeploymentEnvironmentKey), "prod") return res }(), config: config.Enabled().Resource, enrichedAttrs: map[string]any{ - semconv25.AttributeDeploymentEnvironment: "prod", - elasticattr.AgentName: "otlp", - elasticattr.AgentVersion: "unknown", + string(semconv25.DeploymentEnvironmentKey): "prod", + elasticattr.AgentName: "otlp", + elasticattr.AgentVersion: "unknown", }, }, { @@ -215,16 +215,16 @@ func TestResourceEnrich(t *testing.T) { name: "deployment_environment_name_set", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeDeploymentEnvironmentName, "prod") + res.Attributes().PutStr(string(semconv.DeploymentEnvironmentNameKey), "prod") return res }(), config: config.Enabled().Resource, enrichedAttrs: map[string]any{ // To satisfy aliases defined in ES, we duplicate the value for both fields. - semconv25.AttributeDeploymentEnvironment: "prod", - semconv.AttributeDeploymentEnvironmentName: "prod", - elasticattr.AgentName: "otlp", - elasticattr.AgentVersion: "unknown", + string(semconv25.DeploymentEnvironmentKey): "prod", + string(semconv.DeploymentEnvironmentNameKey): "prod", + elasticattr.AgentName: "otlp", + elasticattr.AgentVersion: "unknown", }, }, { @@ -232,17 +232,17 @@ func TestResourceEnrich(t *testing.T) { name: "deployment_environment_mixed", input: func() pcommon.Resource { res := pcommon.NewResource() - res.Attributes().PutStr(semconv.AttributeDeploymentEnvironmentName, "prod") - res.Attributes().PutStr(semconv25.AttributeDeploymentEnvironment, "test") + res.Attributes().PutStr(string(semconv.DeploymentEnvironmentNameKey), "prod") + res.Attributes().PutStr(string(semconv25.DeploymentEnvironmentKey), "test") return res }(), config: config.Enabled().Resource, enrichedAttrs: map[string]any{ // If both are set, we don't touch those values and take them as they are. - semconv25.AttributeDeploymentEnvironment: "test", - semconv.AttributeDeploymentEnvironmentName: "prod", - elasticattr.AgentName: "otlp", - elasticattr.AgentVersion: "unknown", + string(semconv25.DeploymentEnvironmentKey): "test", + string(semconv.DeploymentEnvironmentNameKey): "prod", + elasticattr.AgentName: "otlp", + elasticattr.AgentVersion: "unknown", }, }, } { diff --git a/enrichments/trace/internal/elastic/span.go b/enrichments/trace/internal/elastic/span.go index f4d1082..810a1c7 100644 --- a/enrichments/trace/internal/elastic/span.go +++ b/enrichments/trace/internal/elastic/span.go @@ -35,8 +35,8 @@ import ( "github.com/ua-parser/uap-go/uaparser" "go.opentelemetry.io/collector/pdata/pcommon" "go.opentelemetry.io/collector/pdata/ptrace" - semconv25 "go.opentelemetry.io/collector/semconv/v1.25.0" - semconv27 "go.opentelemetry.io/collector/semconv/v1.27.0" + semconv25 "go.opentelemetry.io/otel/semconv/v1.25.0" + semconv27 "go.opentelemetry.io/otel/semconv/v1.27.0" tracepb "go.opentelemetry.io/proto/otlp/trace/v1" "google.golang.org/grpc/codes" ) @@ -112,94 +112,94 @@ func (s *spanEnrichmentContext) Enrich( // Extract information from span attributes. span.Attributes().Range(func(k string, v pcommon.Value) bool { switch k { - case semconv25.AttributePeerService: + case string(semconv25.PeerServiceKey): s.peerService = v.Str() - case semconv25.AttributeServerAddress: + case string(semconv25.ServerAddressKey): s.serverAddress = v.Str() - case semconv25.AttributeServerPort: + case string(semconv25.ServerPortKey): s.serverPort = v.Int() - case semconv25.AttributeNetPeerName: + case string(semconv25.NetPeerNameKey): if s.serverAddress == "" { // net.peer.name is deprecated, so has lower priority // only set when not already set with server.address // and allowed to be overridden by server.address. s.serverAddress = v.Str() } - case semconv25.AttributeNetPeerPort: + case string(semconv25.NetPeerPortKey): if s.serverPort == 0 { // net.peer.port is deprecated, so has lower priority // only set when not already set with server.port and // allowed to be overridden by server.port. s.serverPort = v.Int() } - case semconv25.AttributeMessagingDestinationName: + case string(semconv25.MessagingDestinationNameKey): s.isMessaging = true s.messagingDestinationName = v.Str() - case semconv25.AttributeMessagingOperation: + case string(semconv25.MessagingOperationKey): s.isMessaging = true - case semconv25.AttributeMessagingSystem: + case string(semconv25.MessagingSystemKey): s.isMessaging = true s.messagingSystem = v.Str() - case semconv25.AttributeMessagingDestinationTemporary: + case string(semconv25.MessagingDestinationTemporaryKey): s.isMessaging = true s.messagingDestinationTemp = true - case semconv25.AttributeHTTPStatusCode, - semconv25.AttributeHTTPResponseStatusCode: + case string(semconv25.HTTPStatusCodeKey), + string(semconv25.HTTPResponseStatusCodeKey): s.isHTTP = true s.httpStatusCode = v.Int() - case semconv25.AttributeHTTPMethod, - semconv25.AttributeHTTPRequestMethod, - semconv25.AttributeHTTPTarget, - semconv25.AttributeHTTPScheme, - semconv25.AttributeHTTPFlavor, - semconv25.AttributeNetHostName: + case string(semconv25.HTTPMethodKey), + string(semconv25.HTTPRequestMethodKey), + string(semconv25.HTTPTargetKey), + string(semconv25.HTTPSchemeKey), + string(semconv25.HTTPFlavorKey), + string(semconv25.NetHostNameKey): s.isHTTP = true - case semconv25.AttributeURLFull, - semconv25.AttributeHTTPURL: + case string(semconv25.URLFullKey), + string(semconv25.HTTPURLKey): s.isHTTP = true // ignoring error as if parse fails then we don't want the url anyway s.urlFull, _ = url.Parse(v.Str()) - case semconv25.AttributeURLScheme: + case string(semconv25.URLSchemeKey): s.isHTTP = true s.urlScheme = v.Str() - case semconv25.AttributeURLDomain: + case string(semconv25.URLDomainKey): s.isHTTP = true s.urlDomain = v.Str() - case semconv25.AttributeURLPort: + case string(semconv25.URLPortKey): s.isHTTP = true s.urlPort = v.Int() - case semconv25.AttributeURLPath: + case string(semconv25.URLPathKey): s.isHTTP = true s.urlPath = v.Str() - case semconv25.AttributeURLQuery: + case string(semconv25.URLQueryKey): s.isHTTP = true s.urlQuery = v.Str() - case semconv25.AttributeRPCGRPCStatusCode: + case string(semconv25.RPCGRPCStatusCodeKey): s.isRPC = true s.grpcStatus = codes.Code(v.Int()).String() - case semconv25.AttributeRPCSystem: + case string(semconv25.RPCSystemKey): s.isRPC = true s.rpcSystem = v.Str() - case semconv25.AttributeRPCService: + case string(semconv25.RPCServiceKey): s.isRPC = true s.rpcService = v.Str() - case semconv25.AttributeDBStatement, - semconv25.AttributeDBUser: + case string(semconv25.DBStatementKey), + string(semconv25.DBUserKey): s.isDB = true - case semconv25.AttributeDBName: + case string(semconv25.DBNameKey): s.isDB = true s.dbName = v.Str() - case semconv25.AttributeDBSystem: + case string(semconv25.DBSystemKey): s.isDB = true s.dbSystem = v.Str() - case semconv27.AttributeGenAiSystem: + case string(semconv27.GenAISystemKey): s.isGenAi = true s.genAiSystem = v.Str() - case semconv27.AttributeUserAgentOriginal: + case string(semconv27.UserAgentOriginalKey): s.userAgentOriginal = v.Str() - case semconv27.AttributeUserAgentName: + case string(semconv27.UserAgentNameKey): s.userAgentName = v.Str() - case semconv27.AttributeUserAgentVersion: + case string(semconv27.UserAgentVersionKey): s.userAgentVersion = v.Str() case "type": s.typeValue = v.Str() @@ -560,10 +560,16 @@ func (s *spanEnrichmentContext) setInferredSpans(span ptrace.Span) { func (s *spanEnrichmentContext) setUserAgentIfRequired(span ptrace.Span) { if s.userAgentName == "" && s.inferredUserAgentName != "" { - span.Attributes().PutStr(semconv27.AttributeUserAgentName, s.inferredUserAgentName) + span.Attributes().PutStr( + string(semconv27.UserAgentNameKey), + s.inferredUserAgentName, + ) } if s.userAgentVersion == "" && s.inferredUserAgentVersion != "" { - span.Attributes().PutStr(semconv27.AttributeUserAgentVersion, s.inferredUserAgentVersion) + span.Attributes().PutStr( + string(semconv27.UserAgentVersionKey), + s.inferredUserAgentVersion, + ) } } @@ -585,11 +591,11 @@ func (s *spanEventEnrichmentContext) enrich( if s.exception { se.Attributes().Range(func(k string, v pcommon.Value) bool { switch k { - case semconv25.AttributeExceptionEscaped: + case string(semconv25.ExceptionEscapedKey): s.exceptionEscaped = v.Bool() - case semconv25.AttributeExceptionType: + case string(semconv25.ExceptionTypeKey): s.exceptionType = v.Str() - case semconv25.AttributeExceptionMessage: + case string(semconv25.ExceptionMessageKey): s.exceptionMessage = v.Str() } return true diff --git a/enrichments/trace/internal/elastic/span_test.go b/enrichments/trace/internal/elastic/span_test.go index 9cddc02..c61f8ec 100644 --- a/enrichments/trace/internal/elastic/span_test.go +++ b/enrichments/trace/internal/elastic/span_test.go @@ -32,8 +32,8 @@ import ( "github.com/ua-parser/uap-go/uaparser" "go.opentelemetry.io/collector/pdata/pcommon" "go.opentelemetry.io/collector/pdata/ptrace" - semconv25 "go.opentelemetry.io/collector/semconv/v1.25.0" - semconv27 "go.opentelemetry.io/collector/semconv/v1.27.0" + semconv25 "go.opentelemetry.io/otel/semconv/v1.25.0" + semconv27 "go.opentelemetry.io/otel/semconv/v1.27.0" tracepb "go.opentelemetry.io/proto/otlp/trace/v1" "google.golang.org/grpc/codes" ) @@ -116,7 +116,7 @@ func TestElasticTransactionEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticTxn() span.SetName("testtxn") - span.Attributes().PutInt(semconv25.AttributeHTTPStatusCode, http.StatusOK) + span.Attributes().PutInt(string(semconv25.HTTPStatusCodeKey), http.StatusOK) return span }(), config: config.Enabled().Transaction, @@ -144,7 +144,7 @@ func TestElasticTransactionEnrich(t *testing.T) { // attributes should be preferred over span status for txn result span.Status().SetCode(ptrace.StatusCodeOk) span.Attributes().PutInt( - semconv25.AttributeHTTPResponseStatusCode, + string(semconv25.HTTPResponseStatusCodeKey), http.StatusProcessing, ) return span @@ -175,7 +175,7 @@ func TestElasticTransactionEnrich(t *testing.T) { // for setting event.outcome span.Status().SetCode(ptrace.StatusCodeOk) span.Attributes().PutInt( - semconv25.AttributeHTTPStatusCode, http.StatusInternalServerError) + string(semconv25.HTTPStatusCodeKey), http.StatusInternalServerError) return span }(), config: config.Enabled().Transaction, @@ -203,7 +203,7 @@ func TestElasticTransactionEnrich(t *testing.T) { // attributes should be preferred over span status for txn result span.Status().SetCode(ptrace.StatusCodeOk) span.Attributes().PutInt( - semconv25.AttributeRPCGRPCStatusCode, + string(semconv25.RPCGRPCStatusCodeKey), int64(codes.OK), ) return span @@ -233,7 +233,7 @@ func TestElasticTransactionEnrich(t *testing.T) { // attributes should be preferred over span status for txn result span.Status().SetCode(ptrace.StatusCodeOk) span.Attributes().PutInt( - semconv25.AttributeRPCGRPCStatusCode, + string(semconv25.RPCGRPCStatusCodeKey), int64(codes.Internal), ) return span @@ -310,7 +310,7 @@ func TestElasticTransactionEnrich(t *testing.T) { span := getElasticTxn() span.SetName("testtxn") span.SetSpanID([8]byte{1}) - span.Attributes().PutStr(semconv25.AttributeMessagingSystem, "kafka") + span.Attributes().PutStr(string(semconv25.MessagingSystemKey), "kafka") return span }(), config: config.Enabled().Transaction, @@ -375,7 +375,7 @@ func TestElasticTransactionEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticTxn() span.SetName("testtxn") - span.Attributes().PutStr(semconv27.AttributeUserAgentOriginal, "Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0") + span.Attributes().PutStr(string(semconv27.UserAgentOriginalKey), "Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0") return span }(), config: config.Enabled().Transaction, @@ -392,8 +392,8 @@ func TestElasticTransactionEnrich(t *testing.T) { elasticattr.SuccessCount: int64(1), elasticattr.TransactionResult: "Success", elasticattr.TransactionType: "unknown", - semconv27.AttributeUserAgentName: "Firefox", - semconv27.AttributeUserAgentVersion: "126.0", + string(semconv27.UserAgentNameKey): "Firefox", + string(semconv27.UserAgentVersionKey): "126.0", }, }, { @@ -401,11 +401,11 @@ func TestElasticTransactionEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticTxn() span.SetName("testtxn") - span.Attributes().PutStr(semconv27.AttributeUserAgentOriginal, "Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0") + span.Attributes().PutStr(string(semconv27.UserAgentOriginalKey), "Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0") // In practical situations the user_agent.{name, version} should be derived from the // original user agent, however, for testing we are setting different values. - span.Attributes().PutStr(semconv27.AttributeUserAgentName, "Chrome") - span.Attributes().PutStr(semconv27.AttributeUserAgentVersion, "51.0.2704") + span.Attributes().PutStr(string(semconv27.UserAgentNameKey), "Chrome") + span.Attributes().PutStr(string(semconv27.UserAgentVersionKey), "51.0.2704") return span }(), config: config.Enabled().Transaction, @@ -423,8 +423,8 @@ func TestElasticTransactionEnrich(t *testing.T) { elasticattr.TransactionResult: "Success", elasticattr.TransactionType: "unknown", // If user_agent.{name, version} are already set then don't override them. - semconv27.AttributeUserAgentName: "Chrome", - semconv27.AttributeUserAgentVersion: "51.0.2704", + string(semconv27.UserAgentNameKey): "Chrome", + string(semconv27.UserAgentVersionKey): "51.0.2704", }, }, { @@ -460,7 +460,7 @@ func TestElasticTransactionEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticMobileTxn() span.SetName("testtxn") - span.Attributes().PutInt(semconv25.AttributeHTTPStatusCode, http.StatusOK) + span.Attributes().PutInt(string(semconv25.HTTPStatusCodeKey), http.StatusOK) return span }(), config: config.Enabled().Transaction, @@ -519,10 +519,10 @@ func TestRootSpanAsDependencyEnrich(t *testing.T) { span.SetName("rootClientSpan") span.SetSpanID([8]byte{1}) span.SetKind(ptrace.SpanKindClient) - span.Attributes().PutStr(semconv27.AttributeHTTPRequestMethod, "GET") - span.Attributes().PutStr(semconv27.AttributeURLFull, "http://localhost:8080") - span.Attributes().PutInt(semconv27.AttributeHTTPResponseStatusCode, 200) - span.Attributes().PutStr(semconv27.AttributeNetworkProtocolVersion, "1.1") + span.Attributes().PutStr(string(semconv27.HTTPRequestMethodKey), "GET") + span.Attributes().PutStr(string(semconv27.URLFullKey), "http://localhost:8080") + span.Attributes().PutInt(string(semconv27.HTTPResponseStatusCodeKey), 200) + span.Attributes().PutStr(string(semconv27.NetworkProtocolVersionKey), "1.1") return span }(), config: config.Enabled(), @@ -556,11 +556,10 @@ func TestRootSpanAsDependencyEnrich(t *testing.T) { span.SetName("rootClientSpan") span.SetSpanID([8]byte{1}) span.SetKind(ptrace.SpanKindClient) - span.Attributes().PutStr(semconv25.AttributeDBSystem, "mssql") - - span.Attributes().PutStr(semconv25.AttributeDBName, "myDb") - span.Attributes().PutStr(semconv25.AttributeDBOperation, "SELECT") - span.Attributes().PutStr(semconv25.AttributeDBStatement, "SELECT * FROM wuser_table") + span.Attributes().PutStr(string(semconv25.DBSystemKey), "mssql") + span.Attributes().PutStr(string(semconv25.DBNameKey), "myDb") + span.Attributes().PutStr(string(semconv25.DBOperationKey), "SELECT") + span.Attributes().PutStr(string(semconv25.DBStatementKey), "SELECT * FROM wuser_table") return span }(), config: config.Enabled(), @@ -595,12 +594,12 @@ func TestRootSpanAsDependencyEnrich(t *testing.T) { span.SetSpanID([8]byte{1}) span.SetKind(ptrace.SpanKindProducer) - span.Attributes().PutStr(semconv25.AttributeServerAddress, "myServer") - span.Attributes().PutStr(semconv25.AttributeServerPort, "1234") - span.Attributes().PutStr(semconv25.AttributeMessagingSystem, "rabbitmq") - span.Attributes().PutStr(semconv25.AttributeMessagingDestinationName, "T") - span.Attributes().PutStr(semconv25.AttributeMessagingOperation, "publish") - span.Attributes().PutStr(semconv25.AttributeMessagingClientID, "a") + span.Attributes().PutStr(string(semconv25.ServerAddressKey), "myServer") + span.Attributes().PutStr(string(semconv25.ServerPortKey), "1234") + span.Attributes().PutStr(string(semconv25.MessagingSystemKey), "rabbitmq") + span.Attributes().PutStr(string(semconv25.MessagingDestinationNameKey), "T") + span.Attributes().PutStr(string(semconv25.MessagingOperationKey), "publish") + span.Attributes().PutStr(string(semconv25.MessagingClientIDKey), "a") return span }(), config: config.Enabled(), @@ -638,12 +637,12 @@ func TestRootSpanAsDependencyEnrich(t *testing.T) { span.SetKind(ptrace.SpanKindProducer) // Adding parent id to make sure this is not a root span. span.SetParentSpanID([8]byte{1, 2, 3, 4, 5, 6, 7, 8}) - span.Attributes().PutStr(semconv25.AttributeServerAddress, "myServer") - span.Attributes().PutStr(semconv25.AttributeServerPort, "1234") - span.Attributes().PutStr(semconv25.AttributeMessagingSystem, "rabbitmq") - span.Attributes().PutStr(semconv25.AttributeMessagingDestinationName, "T") - span.Attributes().PutStr(semconv25.AttributeMessagingOperation, "publish") - span.Attributes().PutStr(semconv25.AttributeMessagingClientID, "a") + span.Attributes().PutStr(string(semconv25.ServerAddressKey), "myServer") + span.Attributes().PutStr(string(semconv25.ServerPortKey), "1234") + span.Attributes().PutStr(string(semconv25.MessagingSystemKey), "rabbitmq") + span.Attributes().PutStr(string(semconv25.MessagingDestinationNameKey), "T") + span.Attributes().PutStr(string(semconv25.MessagingOperationKey), "publish") + span.Attributes().PutStr(string(semconv25.MessagingClientIDKey), "a") return span }(), config: config.Enabled(), @@ -670,10 +669,10 @@ func TestRootSpanAsDependencyEnrich(t *testing.T) { span.SetSpanID([8]byte{1}) span.SetKind(ptrace.SpanKindClient) span.Attributes().PutStr("type", "mobile") - span.Attributes().PutStr(semconv27.AttributeHTTPRequestMethod, "GET") - span.Attributes().PutStr(semconv27.AttributeURLFull, "http://localhost:8080") - span.Attributes().PutInt(semconv27.AttributeHTTPResponseStatusCode, 200) - span.Attributes().PutStr(semconv27.AttributeNetworkProtocolVersion, "1.1") + span.Attributes().PutStr(string(semconv27.HTTPRequestMethodKey), "GET") + span.Attributes().PutStr(string(semconv27.URLFullKey), "http://localhost:8080") + span.Attributes().PutInt(string(semconv27.HTTPResponseStatusCodeKey), 200) + span.Attributes().PutStr(string(semconv27.NetworkProtocolVersionKey), "1.1") return span }(), config: config.Enabled(), @@ -793,7 +792,7 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") return span }(), config: config.Enabled().Span, @@ -816,9 +815,9 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") span.Attributes().PutInt( - semconv25.AttributeHTTPResponseStatusCode, + string(semconv25.HTTPResponseStatusCodeKey), http.StatusOK, ) return span @@ -846,13 +845,13 @@ func TestElasticSpanEnrich(t *testing.T) { span.SetName("testspan") // peer.service should be ignored if more specific deductions // can be made about the service target. - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") span.Attributes().PutInt( - semconv25.AttributeHTTPResponseStatusCode, + string(semconv25.HTTPResponseStatusCodeKey), http.StatusOK, ) span.Attributes().PutStr( - semconv25.AttributeURLFull, + string(semconv25.URLFullKey), "https://www.foo.bar:443/search?q=OpenTelemetry#SemConv", ) return span @@ -880,13 +879,13 @@ func TestElasticSpanEnrich(t *testing.T) { span.SetName("testspan") // peer.service should be ignored if more specific deductions // can be made about the service target. - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") span.Attributes().PutInt( - semconv25.AttributeHTTPResponseStatusCode, + string(semconv25.HTTPResponseStatusCodeKey), http.StatusOK, ) span.Attributes().PutStr( - semconv25.AttributeHTTPURL, + string(semconv25.HTTPURLKey), "https://www.foo.bar:443/search?q=OpenTelemetry#SemConv", ) return span @@ -914,13 +913,13 @@ func TestElasticSpanEnrich(t *testing.T) { span.SetName("testspan") // peer.service should be ignored if more specific deductions // can be made about the service target. - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") span.Attributes().PutInt( - semconv25.AttributeHTTPResponseStatusCode, + string(semconv25.HTTPResponseStatusCodeKey), http.StatusOK, ) - span.Attributes().PutStr(semconv25.AttributeURLDomain, "www.foo.bar") - span.Attributes().PutInt(semconv25.AttributeURLPort, 443) + span.Attributes().PutStr(string(semconv25.URLDomainKey), "www.foo.bar") + span.Attributes().PutInt(string(semconv25.URLPortKey), 443) return span }(), config: config.Enabled().Span, @@ -944,9 +943,9 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") span.Attributes().PutInt( - semconv25.AttributeRPCGRPCStatusCode, + string(semconv25.RPCGRPCStatusCodeKey), int64(codes.OK), ) return span @@ -972,8 +971,8 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") - span.Attributes().PutStr(semconv25.AttributeRPCSystem, "xmlrpc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") + span.Attributes().PutStr(string(semconv25.RPCSystemKey), "xmlrpc") return span }(), config: config.Enabled().Span, @@ -999,8 +998,8 @@ func TestElasticSpanEnrich(t *testing.T) { span.SetName("testspan") // peer.service should be ignored if more specific deductions // can be made about the service target. - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") - span.Attributes().PutStr(semconv25.AttributeRPCService, "service.Test") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") + span.Attributes().PutStr(string(semconv25.RPCServiceKey), "service.Test") return span }(), config: config.Enabled().Span, @@ -1024,9 +1023,9 @@ func TestElasticSpanEnrich(t *testing.T) { span := getElasticSpan() span.SetName("testspan") // No peer.service is set - span.Attributes().PutStr(semconv25.AttributeRPCService, "service.Test") - span.Attributes().PutStr(semconv25.AttributeServerAddress, "10.2.20.18") - span.Attributes().PutInt(semconv25.AttributeServerPort, 8081) + span.Attributes().PutStr(string(semconv25.RPCServiceKey), "service.Test") + span.Attributes().PutStr(string(semconv25.ServerAddressKey), "10.2.20.18") + span.Attributes().PutInt(string(semconv25.ServerPortKey), 8081) return span }(), config: config.Enabled().Span, @@ -1050,9 +1049,9 @@ func TestElasticSpanEnrich(t *testing.T) { span := getElasticSpan() span.SetName("testspan") // No peer.service is set - span.Attributes().PutStr(semconv25.AttributeRPCService, "service.Test") - span.Attributes().PutStr(semconv25.AttributeNetPeerName, "10.2.20.18") - span.Attributes().PutInt(semconv25.AttributeNetPeerPort, 8081) + span.Attributes().PutStr(string(semconv25.RPCServiceKey), "service.Test") + span.Attributes().PutStr(string(semconv25.NetPeerNameKey), "10.2.20.18") + span.Attributes().PutInt(string(semconv25.NetPeerPortKey), 8081) return span }(), config: config.Enabled().Span, @@ -1075,8 +1074,8 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") - span.Attributes().PutStr(semconv25.AttributeMessagingSystem, "kafka") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") + span.Attributes().PutStr(string(semconv25.MessagingSystemKey), "kafka") return span }(), config: config.Enabled().Span, @@ -1100,8 +1099,8 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") - span.Attributes().PutStr(semconv25.AttributeMessagingDestinationName, "t1") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") + span.Attributes().PutStr(string(semconv25.MessagingDestinationNameKey), "t1") return span }(), config: config.Enabled().Span, @@ -1124,9 +1123,9 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") - span.Attributes().PutBool(semconv25.AttributeMessagingDestinationTemporary, true) - span.Attributes().PutStr(semconv25.AttributeMessagingDestinationName, "t1") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") + span.Attributes().PutBool(string(semconv25.MessagingDestinationTemporaryKey), true) + span.Attributes().PutStr(string(semconv25.MessagingDestinationNameKey), "t1") return span }(), config: config.Enabled().Span, @@ -1149,15 +1148,12 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") span.Attributes().PutStr( - semconv25.AttributeURLFull, + string(semconv25.URLFullKey), "https://localhost:9200/index/_search?q=user.id:kimchy", ) - span.Attributes().PutStr( - semconv25.AttributeDBSystem, - semconv25.AttributeDBSystemElasticsearch, - ) + span.Attributes().PutStr(string(semconv25.DBSystemKey), "elasticsearch") return span }(), config: config.Enabled().Span, @@ -1181,20 +1177,11 @@ func TestElasticSpanEnrich(t *testing.T) { input: func() ptrace.Span { span := getElasticSpan() span.SetName("testspan") - span.Attributes().PutStr(semconv25.AttributePeerService, "testsvc") - span.Attributes().PutStr( - semconv25.AttributeRPCSystem, - semconv25.AttributeRPCSystemGRPC, - ) - span.Attributes().PutStr(semconv25.AttributeRPCService, "cassandra.API") - span.Attributes().PutStr( - semconv25.AttributeRPCGRPCStatusCode, - semconv25.AttributeRPCGRPCStatusCodeOk, - ) - span.Attributes().PutStr( - semconv25.AttributeDBSystem, - semconv25.AttributeDBSystemCassandra, - ) + span.Attributes().PutStr(string(semconv25.PeerServiceKey), "testsvc") + span.Attributes().PutStr(string(semconv25.RPCSystemKey), "grpc") + span.Attributes().PutStr(string(semconv25.RPCServiceKey), "cassandra.API") + span.Attributes().PutInt(string(semconv25.RPCGRPCStatusCodeKey), 0) + span.Attributes().PutStr(string(semconv25.DBSystemKey), "cassandra") return span }(), config: config.Enabled().Span, @@ -1256,7 +1243,7 @@ func TestElasticSpanEnrich(t *testing.T) { span := getElasticSpan() span.SetName("testspan") span.SetSpanID([8]byte{1}) - span.Attributes().PutStr(semconv27.AttributeGenAiSystem, "openai") + span.Attributes().PutStr(string(semconv27.GenAISystemKey), "openai") return span }(), config: config.Enabled().Span, @@ -1279,8 +1266,8 @@ func TestElasticSpanEnrich(t *testing.T) { span.SetName("testspan") // rpc.service should be used as destination.service.resource // if no other attributes are present. - span.Attributes().PutStr(semconv25.AttributeRPCService, "myService") - span.Attributes().PutStr(semconv25.AttributeRPCSystem, "grpc") + span.Attributes().PutStr(string(semconv25.RPCServiceKey), "myService") + span.Attributes().PutStr(string(semconv25.RPCSystemKey), "grpc") return span }(), config: config.Enabled().Span, @@ -1305,21 +1292,21 @@ func TestElasticSpanEnrich(t *testing.T) { span := getElasticSpan() span.SetName("testspan") span.SetSpanID([8]byte{1}) - span.Attributes().PutStr(semconv27.AttributeUserAgentOriginal, "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1") + span.Attributes().PutStr(string(semconv27.UserAgentOriginalKey), "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1") return span }(), config: config.Enabled().Span, enrichedAttrs: map[string]any{ - elasticattr.TimestampUs: startTs.AsTime().UnixMicro(), - elasticattr.SpanName: "testspan", - elasticattr.ProcessorEvent: "span", - elasticattr.SpanRepresentativeCount: float64(1), - elasticattr.SpanType: "unknown", - elasticattr.SpanDurationUs: expectedDuration.Microseconds(), - elasticattr.EventOutcome: "success", - elasticattr.SuccessCount: int64(1), - semconv27.AttributeUserAgentName: "Mobile Safari", - semconv27.AttributeUserAgentVersion: "13.1.1", + elasticattr.TimestampUs: startTs.AsTime().UnixMicro(), + elasticattr.SpanName: "testspan", + elasticattr.ProcessorEvent: "span", + elasticattr.SpanRepresentativeCount: float64(1), + elasticattr.SpanType: "unknown", + elasticattr.SpanDurationUs: expectedDuration.Microseconds(), + elasticattr.EventOutcome: "success", + elasticattr.SuccessCount: int64(1), + string(semconv27.UserAgentNameKey): "Mobile Safari", + string(semconv27.UserAgentVersionKey): "13.1.1", }, }, { @@ -1328,11 +1315,11 @@ func TestElasticSpanEnrich(t *testing.T) { span := getElasticSpan() span.SetName("testspan") span.SetSpanID([8]byte{1}) - span.Attributes().PutStr(semconv27.AttributeUserAgentOriginal, "Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0") + span.Attributes().PutStr(string(semconv27.UserAgentOriginalKey), "Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0") // In practical situations the user_agent.{name, version} should be derived from the // original user agent, however, for testing we are setting different values. - span.Attributes().PutStr(semconv27.AttributeUserAgentName, "Chrome") - span.Attributes().PutStr(semconv27.AttributeUserAgentVersion, "51.0.2704") + span.Attributes().PutStr(string(semconv27.UserAgentNameKey), "Chrome") + span.Attributes().PutStr(string(semconv27.UserAgentVersionKey), "51.0.2704") return span }(), config: config.Enabled().Span, @@ -1346,8 +1333,8 @@ func TestElasticSpanEnrich(t *testing.T) { elasticattr.EventOutcome: "success", elasticattr.SuccessCount: int64(1), // If user_agent.{name, version} are already set then don't override them. - semconv27.AttributeUserAgentName: "Chrome", - semconv27.AttributeUserAgentVersion: "51.0.2704", + string(semconv27.UserAgentNameKey): "Chrome", + string(semconv27.UserAgentVersionKey): "51.0.2704", }, }, } { @@ -1410,9 +1397,9 @@ func TestSpanEventEnrich(t *testing.T) { event := ptrace.NewSpanEvent() event.SetName("exception") event.SetTimestamp(ts) - event.Attributes().PutStr(semconv25.AttributeExceptionType, "java.net.ConnectionError") - event.Attributes().PutStr(semconv25.AttributeExceptionMessage, "something is wrong") - event.Attributes().PutStr(semconv25.AttributeExceptionStacktrace, `Exception in thread "main" java.lang.RuntimeException: Test exception\\n at com.example.GenerateTrace.methodB(GenerateTrace.java:13)\\n at com.example.GenerateTrace.methodA(GenerateTrace.java:9)\\n at com.example.GenerateTrace.main(GenerateTrace.java:5)`) + event.Attributes().PutStr(string(semconv25.ExceptionTypeKey), "java.net.ConnectionError") + event.Attributes().PutStr(string(semconv25.ExceptionMessageKey), "something is wrong") + event.Attributes().PutStr(string(semconv25.ExceptionStacktraceKey), `Exception in thread "main" java.lang.RuntimeException: Test exception\\n at com.example.GenerateTrace.methodB(GenerateTrace.java:13)\\n at com.example.GenerateTrace.methodA(GenerateTrace.java:9)\\n at com.example.GenerateTrace.main(GenerateTrace.java:5)`) return event }(), config: config.Enabled().SpanEvent, @@ -1443,9 +1430,9 @@ func TestSpanEventEnrich(t *testing.T) { event := ptrace.NewSpanEvent() event.SetName("exception") event.SetTimestamp(ts) - event.Attributes().PutStr(semconv25.AttributeExceptionType, "java.net.ConnectionError") - event.Attributes().PutStr(semconv25.AttributeExceptionMessage, "something is wrong") - event.Attributes().PutStr(semconv25.AttributeExceptionStacktrace, `Exception in thread "main" java.lang.RuntimeException: Test exception\\n at com.example.GenerateTrace.methodB(GenerateTrace.java:13)\\n at com.example.GenerateTrace.methodA(GenerateTrace.java:9)\\n at com.example.GenerateTrace.main(GenerateTrace.java:5)`) + event.Attributes().PutStr(string(semconv25.ExceptionTypeKey), "java.net.ConnectionError") + event.Attributes().PutStr(string(semconv25.ExceptionMessageKey), "something is wrong") + event.Attributes().PutStr(string(semconv25.ExceptionStacktraceKey), `Exception in thread "main" java.lang.RuntimeException: Test exception\\n at com.example.GenerateTrace.methodB(GenerateTrace.java:13)\\n at com.example.GenerateTrace.methodA(GenerateTrace.java:9)\\n at com.example.GenerateTrace.main(GenerateTrace.java:5)`) return event }(), config: config.Enabled().SpanEvent, diff --git a/go.mod b/go.mod index 9c26494..829f89f 100644 --- a/go.mod +++ b/go.mod @@ -7,18 +7,18 @@ require ( github.com/elastic/elastic-transport-go/v8 v8.7.0 github.com/elastic/go-elasticsearch/v8 v8.18.0 github.com/google/go-cmp v0.7.0 - github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden v0.126.0 - github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest v0.126.0 + github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden v0.127.0 + github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest v0.127.0 github.com/stretchr/testify v1.10.0 github.com/ua-parser/uap-go v0.0.0-20250213224047-9c035f085b90 - go.opentelemetry.io/collector/component v1.32.0 - go.opentelemetry.io/collector/component/componenttest v0.126.0 - go.opentelemetry.io/collector/config/configcompression v1.32.0 - go.opentelemetry.io/collector/config/confighttp v0.126.0 - go.opentelemetry.io/collector/confmap v1.32.0 - go.opentelemetry.io/collector/confmap/xconfmap v0.126.0 - go.opentelemetry.io/collector/pdata v1.32.0 - go.opentelemetry.io/collector/semconv v0.126.0 + go.opentelemetry.io/collector/component v1.33.0 + go.opentelemetry.io/collector/component/componenttest v0.127.0 + go.opentelemetry.io/collector/config/configcompression v1.33.0 + go.opentelemetry.io/collector/config/confighttp v0.127.0 + go.opentelemetry.io/collector/confmap v1.33.0 + go.opentelemetry.io/collector/confmap/xconfmap v0.127.0 + go.opentelemetry.io/collector/pdata v1.33.0 + go.opentelemetry.io/otel v1.36.0 go.opentelemetry.io/otel/sdk v1.36.0 go.opentelemetry.io/proto/otlp v1.6.0 go.uber.org/zap v1.27.0 @@ -37,7 +37,7 @@ require ( github.com/gobwas/glob v0.2.3 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/snappy v1.0.0 // indirect - github.com/google/go-tpm v0.9.4 // indirect + github.com/google/go-tpm v0.9.5 // indirect github.com/google/uuid v1.6.0 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/hashicorp/golang-lru v0.5.4 // indirect @@ -50,24 +50,23 @@ require ( github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect - github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.126.0 // indirect + github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.127.0 // indirect github.com/pierrec/lz4/v4 v4.1.22 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/rs/cors v1.11.1 // indirect go.opentelemetry.io/auto/sdk v1.1.0 // indirect - go.opentelemetry.io/collector/client v1.32.0 // indirect - go.opentelemetry.io/collector/config/configauth v0.126.0 // indirect - go.opentelemetry.io/collector/config/configmiddleware v0.126.0 // indirect - go.opentelemetry.io/collector/config/configopaque v1.32.0 // indirect - go.opentelemetry.io/collector/config/configtls v1.32.0 // indirect - go.opentelemetry.io/collector/extension/extensionauth v1.32.0 // indirect - go.opentelemetry.io/collector/extension/extensionmiddleware v0.126.0 // indirect - go.opentelemetry.io/collector/featuregate v1.32.0 // indirect - go.opentelemetry.io/collector/internal/telemetry v0.126.0 // indirect - go.opentelemetry.io/collector/pdata/pprofile v0.126.0 // indirect + go.opentelemetry.io/collector/client v1.33.0 // indirect + go.opentelemetry.io/collector/config/configauth v0.127.0 // indirect + go.opentelemetry.io/collector/config/configmiddleware v0.127.0 // indirect + go.opentelemetry.io/collector/config/configopaque v1.33.0 // indirect + go.opentelemetry.io/collector/config/configtls v1.33.0 // indirect + go.opentelemetry.io/collector/extension/extensionauth v1.33.0 // indirect + go.opentelemetry.io/collector/extension/extensionmiddleware v0.127.0 // indirect + go.opentelemetry.io/collector/featuregate v1.33.0 // indirect + go.opentelemetry.io/collector/internal/telemetry v0.127.0 // indirect + go.opentelemetry.io/collector/pdata/pprofile v0.127.0 // indirect go.opentelemetry.io/contrib/bridges/otelzap v0.10.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 // indirect - go.opentelemetry.io/otel v1.36.0 // indirect go.opentelemetry.io/otel/log v0.11.0 // indirect go.opentelemetry.io/otel/metric v1.36.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.35.0 // indirect diff --git a/go.sum b/go.sum index 4c5a7d0..3353d8b 100644 --- a/go.sum +++ b/go.sum @@ -35,8 +35,8 @@ github.com/golang/snappy v1.0.0/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEW github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= -github.com/google/go-tpm v0.9.4 h1:awZRf9FwOeTunQmHoDYSHJps3ie6f1UlhS1fOdPEt1I= -github.com/google/go-tpm v0.9.4/go.mod h1:h9jEsEECg7gtLis0upRBQU+GhYVH6jMjrFxI8u6bVUY= +github.com/google/go-tpm v0.9.5 h1:ocUmnDebX54dnW+MQWGQRbdaAcJELsa6PqZhJ48KwVU= +github.com/google/go-tpm v0.9.5/go.mod h1:h9jEsEECg7gtLis0upRBQU+GhYVH6jMjrFxI8u6bVUY= github.com/google/go-tpm-tools v0.4.4 h1:oiQfAIkc6xTy9Fl5NKTeTJkBTlXdHsxAofmQyxBKY98= github.com/google/go-tpm-tools v0.4.4/go.mod h1:T8jXkp2s+eltnCDIsXR84/MTcVU9Ja7bh3Mit0pa4AY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= @@ -71,12 +71,12 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= -github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden v0.126.0 h1:AnOgi0AF5kALP4hEILsQEnRzT/yNXfua598210Dn9ko= -github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden v0.126.0/go.mod h1:jjyo4lLRH9WOUJ9djpEql6xqVAaReNDY7ciWRt23FZk= -github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest v0.126.0 h1:9RPktK9IsZaHN5aGV+bA7UbGtZCDGWvkSLcldAIPD98= -github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest v0.126.0/go.mod h1:ZgQQqwY9c/e3JleZPQ1xxm9ZbgEKpGVjBEP+D+fTM+s= -github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.126.0 h1:FqfYYIBllbKMX2J64U37bVpICpo3+chXC3oC192fffM= -github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.126.0/go.mod h1:j54xa94UWeLUNV1PXLm8QAlXCOqw6T8LOACb/qtZcug= +github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden v0.127.0 h1:eYh0jgBt8X7Rvq2PaSoKEmMbMWZFRHm7tl/IoRdQKZc= +github.com/open-telemetry/opentelemetry-collector-contrib/pkg/golden v0.127.0/go.mod h1:k/9O/mjBAdM0LNukPEN2ImO2DbQJ/0z00hu39bkEzAU= +github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest v0.127.0 h1:1gE/wca+n2hptpCrH60oqbTdXUMvMyZSe0lBkaBmUpQ= +github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatatest v0.127.0/go.mod h1:kEufI2rLrjeBxAyV+SElguqAyZNU3OUVOVhPCC+eJDw= +github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.127.0 h1:htRqI1VzOR/9ATKKl28Ps4q/GR9T6tG+lwSdXnbufRE= +github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.127.0/go.mod h1:eYArfh5F/dmAP8LKFcZfTThRUGYyuN/zaUA2G+H88qg= github.com/pierrec/lz4/v4 v4.1.22 h1:cKFw6uJDK+/gfw5BcDL0JL5aBsAFdsIT18eRtLj7VIU= github.com/pierrec/lz4/v4 v4.1.22/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= @@ -95,52 +95,50 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= -go.opentelemetry.io/collector/client v1.32.0 h1:KENBLlN1NF0uvPkCiW7SYRbh9O8Xqutd+gQyTvv084k= -go.opentelemetry.io/collector/client v1.32.0/go.mod h1:10O5S7H3a/I/UFS1iC7/CE35jUO8rFtV8NToUj8Wtd8= -go.opentelemetry.io/collector/component v1.32.0 h1:YqgRnHNMjAjKkO2nqhvlSxRIKdgcto9J3H8CTyVXBFk= -go.opentelemetry.io/collector/component v1.32.0/go.mod h1:r2gxdx07gNVbsdH1ypt43W/hWAEgP2ti1eAYnrT6j7s= -go.opentelemetry.io/collector/component/componenttest v0.126.0 h1:b45VjyZjgBqz6jRt7uNQeRLiInKgoM4+QST0xxYbnHo= -go.opentelemetry.io/collector/component/componenttest v0.126.0/go.mod h1:otn8RzUvSR+SHROA5t3Rj7JwdmCY6NY2MTRvy/sBMD0= -go.opentelemetry.io/collector/config/configauth v0.126.0 h1:7FFffzLaiJMC+Y/83QVgGF7qElrADE+/ZnVGph1C+Wg= -go.opentelemetry.io/collector/config/configauth v0.126.0/go.mod h1:x9Ifg7oOsY9aaLP2nFEVPhXpnBXGlRCD1xjZhFfYnnk= -go.opentelemetry.io/collector/config/configcompression v1.32.0 h1:x5+hraAhSAidb7ZWun5ixyUaF3GBDrrzcJFLeLR/dKs= -go.opentelemetry.io/collector/config/configcompression v1.32.0/go.mod h1:QwbNpaOl6Me+wd0EdFuEJg0Cc+WR42HNjJtdq4TwE6w= -go.opentelemetry.io/collector/config/confighttp v0.126.0 h1:Gap9DLkvWDuA3OVXQfHFS24cwMJ3mtQ30zk+d1dj0b0= -go.opentelemetry.io/collector/config/confighttp v0.126.0/go.mod h1:2jnuJaYbwugQ2kM2iNDbC2bvq7x46vJPriv6I+OS2+A= -go.opentelemetry.io/collector/config/configmiddleware v0.126.0 h1:pkNs9lD1KGthnVFYxAB8KDld+RvtuIpI8hjWe+vMaU0= -go.opentelemetry.io/collector/config/configmiddleware v0.126.0/go.mod h1:z77sbPTHLeRhcmvIOC7btiiP/Z7lw1WmieAz417f4Ps= -go.opentelemetry.io/collector/config/configopaque v1.32.0 h1:BfWKIkAJIwgMlRmsxc3U3dUt1A0GgXVw6bvzcqbaUr0= -go.opentelemetry.io/collector/config/configopaque v1.32.0/go.mod h1:rw0/X78O8cOk0dhACqNbdiKk1PF7z7mwq9wgSpWoqgs= -go.opentelemetry.io/collector/config/configtls v1.32.0 h1:RCuGc9zYfFa90kEj5SY2P2ibUApkexhORkRCPN6dI/Y= -go.opentelemetry.io/collector/config/configtls v1.32.0/go.mod h1:3bIvaE8ZDhptdwbDCnieC8k/apRXHolTL/x+F0zqBm8= -go.opentelemetry.io/collector/confmap v1.32.0 h1:Xv/ZcncpQdACwvQvd8CFJgdO/jpBWcOoh9mSnEl0hpc= -go.opentelemetry.io/collector/confmap v1.32.0/go.mod h1:fJC2ZOmFz2nClyhyGRYB92Fl8SMppsnt/7y3AHPlDRY= -go.opentelemetry.io/collector/confmap/xconfmap v0.126.0 h1:rfVQP2DkW/5zETjcJL67Hq7O1fLOCnihJ6HygBBqTMY= -go.opentelemetry.io/collector/confmap/xconfmap v0.126.0/go.mod h1:Q6XzD9nt9zdm4Nb+mYc/h8oj846Thp2UxGTLrmUzubc= -go.opentelemetry.io/collector/consumer v1.32.0 h1:pMRa/i3z+Z4MD+hmr60Fr3DZ7vyffPcjqXl/uSWJm3g= -go.opentelemetry.io/collector/consumer v1.32.0/go.mod h1:zhli99OuSl1mGc43qLBfWF3/fRdJDdSEKBTfowWSM6c= -go.opentelemetry.io/collector/extension v1.32.0 h1:41UL2qSXbqvSZNoAO+D1Rt7gQMZR1+eaOk+OAoaGFOE= -go.opentelemetry.io/collector/extension v1.32.0/go.mod h1:p55BPwDkYmjxZgAp4UiR6hfiEGFgV/5D670WEdKem8c= -go.opentelemetry.io/collector/extension/extensionauth v1.32.0 h1:y30nikjrmfNZ1beP4B8wsLa76Gy6D+RLmhr54vFbvnE= -go.opentelemetry.io/collector/extension/extensionauth v1.32.0/go.mod h1:qaGbjJ+33Xv8sx4cPv/OXmc/LcQORSVbzcAE6O1n31o= -go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.126.0 h1:rcWDWbDQDW+OE0L8nsGnrtSwm8vnPoyKy+vcL93jQyk= -go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.126.0/go.mod h1:uKjum2GACQWKUsJv7q30ygcwmAuVVdj58WFxVsZm2is= -go.opentelemetry.io/collector/extension/extensionmiddleware v0.126.0 h1:7QwG8/opD2TzuBUrj8bvCN7pIx5QUnhwRHOwABRmQG8= -go.opentelemetry.io/collector/extension/extensionmiddleware v0.126.0/go.mod h1:yZYfdaxnDOCNWruM0GrF5lBBmFoBorAXqXtCeLrcllU= -go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.126.0 h1:3jgdq3HnNVEznOabzEp8cv6YgzVeak+lgX0mC3uwyK4= -go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.126.0/go.mod h1:qi7wSIB9GJCqzdfoVMF+yamgblFggUe4JEEzAhPuqqs= -go.opentelemetry.io/collector/featuregate v1.32.0 h1:ArSnZF3hxXC09aO7v2Ff9XSCA8oI/hkWSv+lYnpSCac= -go.opentelemetry.io/collector/featuregate v1.32.0/go.mod h1:Y/KsHbvREENKvvN9RlpiWk/IGBK+CATBYzIIpU7nccc= -go.opentelemetry.io/collector/internal/telemetry v0.126.0 h1:sSts1qwubFcmi5GMg9zwi3UPmOh7vxsj+y7j962+whQ= -go.opentelemetry.io/collector/internal/telemetry v0.126.0/go.mod h1:7MqIwRTPLKH5LySJpo5nZmbX9AmfCUp34F6KSB2C94g= -go.opentelemetry.io/collector/pdata v1.32.0 h1:hBzlJV1rujr1UdD2CBy2gmaIKtC15ysg/z+x8F3McQA= -go.opentelemetry.io/collector/pdata v1.32.0/go.mod h1:m41io9nWpy7aCm/uD1L9QcKiZwOP0ldj83JEA34dmlk= -go.opentelemetry.io/collector/pdata/pprofile v0.126.0 h1:ArYQxg5KdTb98r1X6KSZY7W6/4DPv/q6z7jSbSZ1mBc= -go.opentelemetry.io/collector/pdata/pprofile v0.126.0/go.mod h1:2fBTFDcXjVfseBQKnt/DTM0EYTmFoPKtRpjg8ql38Ek= -go.opentelemetry.io/collector/pipeline v0.126.0 h1:KntvS5K+a22JmuiaYSrk6ApRwg8rOwA29Df9wZ+kBhQ= -go.opentelemetry.io/collector/pipeline v0.126.0/go.mod h1:TO02zju/K6E+oFIOdi372Wk0MXd+Szy72zcTsFQwXl4= -go.opentelemetry.io/collector/semconv v0.126.0 h1:1q1rfOhN9sOcHQomjs9JIqFUweIgp9REUq550R6B7d8= -go.opentelemetry.io/collector/semconv v0.126.0/go.mod h1:te6VQ4zZJO5Lp8dM2XIhDxDiL45mwX0YAQQWRQ0Qr9U= +go.opentelemetry.io/collector/client v1.33.0 h1:1S/t3CV3SnmwjbTSKj1DoMsQkDq3bBlLt9eREX/Lzrk= +go.opentelemetry.io/collector/client v1.33.0/go.mod h1:CMX7Ly/zQE7hH9T4NUyT9kKYlZC8JIu7ncBzEL6kLYM= +go.opentelemetry.io/collector/component v1.33.0 h1:AoP5ZGEU7Q3YDYQx2CgYy82Xmy3gLgh1WCMeLtTXXFo= +go.opentelemetry.io/collector/component v1.33.0/go.mod h1:/5v3hl1GSQT45D6T7sE/LB6nlQMMRHCYDX1glJamh7E= +go.opentelemetry.io/collector/component/componenttest v0.127.0 h1:2cieQeh5OS1zf73Aad4b8Rf5vCDk5Hlb6oeJH7Q1VYs= +go.opentelemetry.io/collector/component/componenttest v0.127.0/go.mod h1:0jHbHYRXSNS+nm2vSsxpdAsIj+EDehxKRGk4oclyHKs= +go.opentelemetry.io/collector/config/configauth v0.127.0 h1:31PvdHi0mSXJQAUT0jlicOlT2CsPlkc9KHr/Ek3tIj0= +go.opentelemetry.io/collector/config/configauth v0.127.0/go.mod h1:Jzle3Nup5LCxcJPb4DdPpH5iEqDOD6WSMeiqBBWksbo= +go.opentelemetry.io/collector/config/configcompression v1.33.0 h1:nXKQ+wN/8O0dyjkpieIwQ3PWclJa0mcGwv9mmYd48oU= +go.opentelemetry.io/collector/config/configcompression v1.33.0/go.mod h1:QwbNpaOl6Me+wd0EdFuEJg0Cc+WR42HNjJtdq4TwE6w= +go.opentelemetry.io/collector/config/confighttp v0.127.0 h1:VOMJ4v79SxiUVabl+kw/j56zOKs0zC5073R4SaQ4gbY= +go.opentelemetry.io/collector/config/confighttp v0.127.0/go.mod h1:/HxOPqXjYm1ViIwmxesqayozvTWawnd1bg6F2WMfBTs= +go.opentelemetry.io/collector/config/configmiddleware v0.127.0 h1:gJ6xTs3cip7Q5zgMcdBj5fiYYHpmXGclGuHCxDKs+RA= +go.opentelemetry.io/collector/config/configmiddleware v0.127.0/go.mod h1:yYxOsEgHG8WoX4ShSJMpXVskU5GTK3ecTAHzqH6YixE= +go.opentelemetry.io/collector/config/configopaque v1.33.0 h1:QNiPszINK/pBA+tFWgct7IXka+X6W2E4k/Sy8TTg0s8= +go.opentelemetry.io/collector/config/configopaque v1.33.0/go.mod h1:rw0/X78O8cOk0dhACqNbdiKk1PF7z7mwq9wgSpWoqgs= +go.opentelemetry.io/collector/config/configtls v1.33.0 h1:4pGT0nFM24KCtyyq8ng7VWW9fVN1VLQMlkNrMhiWRhU= +go.opentelemetry.io/collector/config/configtls v1.33.0/go.mod h1:50tvOLlI6iedkrQ9/HMO1KWxzzx0Nu28MgSRXxTwSkY= +go.opentelemetry.io/collector/confmap v1.33.0 h1:dCLSrONMssTWhnbELZZpJoWMn+P+DVJc8r10JJCeS/4= +go.opentelemetry.io/collector/confmap v1.33.0/go.mod h1:fq5ccP4lzF3IVK/Cs0kWsiH0dynejXkMc8gaNwvkvtk= +go.opentelemetry.io/collector/confmap/xconfmap v0.127.0 h1:isSNkBXltLxUWstxJyHcJ3qVo9qp9GABCVhzIvZgIdM= +go.opentelemetry.io/collector/confmap/xconfmap v0.127.0/go.mod h1:K9GaSgmMYxM1/QlAVNIj2fX9LekInm9dwFnIeF1HCgs= +go.opentelemetry.io/collector/consumer v1.33.0 h1:y6ohYtFsXHdD3eJ67SRHSgumRQRNlR6N+DuyjOq3hYo= +go.opentelemetry.io/collector/consumer v1.33.0/go.mod h1:WwB/nHWw6KwumVy7OayUmvRa7V3UsfK+f8qwW8/c5rY= +go.opentelemetry.io/collector/extension v1.33.0 h1:QXNOwcvKi9iwai83ielK8B8fCOH9wNO9K98IY0ftotM= +go.opentelemetry.io/collector/extension v1.33.0/go.mod h1:EVsoOULEODW5vzHE76ltl7BjOdaYnDw5/EmAFFFAmBg= +go.opentelemetry.io/collector/extension/extensionauth v1.33.0 h1:m7PQze6Z9xddM1UmbU2P25cipAe7koAEaR6lPgxPMxE= +go.opentelemetry.io/collector/extension/extensionauth v1.33.0/go.mod h1:4sqbOn6DeRFEFpmBKElk92mdv9lImrXrCJaR8s05K68= +go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.127.0 h1:CXSYbXZBD7cLI1HlIp1w+hJmyznf75ZYeFitj6FDxDg= +go.opentelemetry.io/collector/extension/extensionauth/extensionauthtest v0.127.0/go.mod h1:GKxP+mkK2Pq6h9trvZ7/Vb4XM/fosuwvB08A1mnlNYM= +go.opentelemetry.io/collector/extension/extensionmiddleware v0.127.0 h1:5dM/Wqnvn6g6qLaPZy+86dyfiEZgibNcY/EGOgaxtCM= +go.opentelemetry.io/collector/extension/extensionmiddleware v0.127.0/go.mod h1:XGFqdRdGYXJt3IotRW72tgSCFS20Vr9jk5jqQiinmXc= +go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.127.0 h1:18YkheReX/x/pJGGCtwBLPUcCnzGUy79IQAmQibGVLA= +go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest v0.127.0/go.mod h1:aqtxnTgH5F6OfWanYrEM9KKy1uWaBU46MZKEvDOzBv0= +go.opentelemetry.io/collector/featuregate v1.33.0 h1:ronhxafsUE7H3Cem4U2PXrvDZhxA9Gixx4Wik7X32X8= +go.opentelemetry.io/collector/featuregate v1.33.0/go.mod h1:Y/KsHbvREENKvvN9RlpiWk/IGBK+CATBYzIIpU7nccc= +go.opentelemetry.io/collector/internal/telemetry v0.127.0 h1:/wAnPmFjUN7MwnRyDYJzUJZa5n0qK9zM1F7PgMWM5Y0= +go.opentelemetry.io/collector/internal/telemetry v0.127.0/go.mod h1:Un7Zn//l0BkE6hk6wirsTGwnJJpxw/gJWgzYL3eSruk= +go.opentelemetry.io/collector/pdata v1.33.0 h1:PuqiZzdCoBJo9NmMzuYfzazpeFZyLmbDVcRrvb497lg= +go.opentelemetry.io/collector/pdata v1.33.0/go.mod h1:TDvbHuvIK+g6xqu1gxtz8ti4pB2x1WcBpjFob5KfleU= +go.opentelemetry.io/collector/pdata/pprofile v0.127.0 h1:t0fpwMunK+dkUTPFc0zim8qfAan086eMqpSufnt+H30= +go.opentelemetry.io/collector/pdata/pprofile v0.127.0/go.mod h1:6S6q2+vaF7qfDxLKctQUB+CN7hThuz73p4le6mYLWnQ= +go.opentelemetry.io/collector/pipeline v0.127.0 h1:WdllRrWwsJ1yAr9l4LRiArb0ekdNaGuMJP8zQ6lZlos= +go.opentelemetry.io/collector/pipeline v0.127.0/go.mod h1:TO02zju/K6E+oFIOdi372Wk0MXd+Szy72zcTsFQwXl4= go.opentelemetry.io/contrib/bridges/otelzap v0.10.0 h1:ojdSRDvjrnm30beHOmwsSvLpoRF40MlwNCA+Oo93kXU= go.opentelemetry.io/contrib/bridges/otelzap v0.10.0/go.mod h1:oTTm4g7NEtHSV2i/0FeVdPaPgUIZPfQkFbq0vbzqnv0= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 h1:sbiXRNDSWJOTobXh5HyQKjq6wUC5tNybqjIqDpAY4CU=