Skip to content

[exporter/datadog] Update default logic for service entry spans identification #32005

Open
@liustanley

Description

@liustanley

What will change?

Datadog has a notion of service entry spans, which allows users to filter on a subset of traces and indicates that trace metrics should be generated. We are introducing the following mapping in order to consistently identify service entry spans from OTLP spans from the Datadog Exporter.

OpenTelemetry Convention Datadog Convention
Root span Service entry span
Server span (span.kind: server) Service entry span
Consumer span (span.kind: consumer) Service entry span
Client span (span.kind: client) Generate trace metrics
Producer span (span.kind: producer) Generate trace metrics
Internal span (span.kind: internal) No trace metrics generated

Who is affected?

Most users will see an increase in trace metrics with this change, which may affect existing monitors that are based on trace metrics. Users who only have internal spans will see a decrease in trace metrics.

If you are using compute_stats_by_span_kind, you likely won't be affected because we are also computing stats by span kind in this change.

What should I do if I am affected?

If you have existing monitors based on trace metrics, you can update them after upgrading since this change will introduce more consistency in trace metrics. If you only have internal spans, please update your instrumentation according to the above table to receive trace metrics and service entry spans. The transform processor can also be used to update span kind if needed.

When will it change?

This change will first be released as an opt-in feature in order to avoid breaking changes for customers. This feature has already been merged in the datadog-agent repository and is pending release (PR). Once version 7.53.0 of the agent is released (tentatively mid April), this change will be implemented in collector-contrib. Once this feature has been deemed stable, we will enable this change by default.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestexporter/datadogDatadog componentsnever staleIssues marked with this label will be never staled and automatically removed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions