Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

datadogreceiver produces incorrect telemetry.sdk.language #29459

Closed
povilasv opened this issue Nov 23, 2023 · 3 comments
Closed

datadogreceiver produces incorrect telemetry.sdk.language #29459

povilasv opened this issue Nov 23, 2023 · 3 comments
Assignees
Labels
bug Something isn't working receiver/datadog

Comments

@povilasv
Copy link
Contributor

Component(s)

receiver/datadog

What happened?

Description

Looks like DataDog's library uses ".NET" as value instead of "dotnet" in their instrumentation:

See: https://github.com/DataDog/dd-trace-dotnet/blob/ecb5d5949f6c29dbe99a451c7a3574013cfeb1bd/tracer/src/Datadog.Trace/AgentHttpHeaderNames.cs#L76

So we need to remap ".NET" to "dotnet" to follow OTEL semantic conventions.

I've also doublechecked other variables, and they seem to map to semantic conventions correctly -> https://opentelemetry.io/docs/specs/semconv/resource/#telemetry-sdk

The only other odd language is javascript. DD uses "javascript" in their instrumentation -> https://github.com/search?q=repo%3ADataDog%2Fdd-trace-js%20Datadog-Meta-Lang&type=code

But we don't seem to have equivalent in semantic conventions?

Steps to Reproduce

Expected Result

Actual Result

Collector version

v0.89.0

Environment information

Environment

OS: (e.g., "Ubuntu 20.04")
Compiler(if manually compiled): (e.g., "go 14.2")

OpenTelemetry Collector configuration

No response

Log output

No response

Additional context

No response

@povilasv povilasv added bug Something isn't working needs triage New item requiring triage labels Nov 23, 2023
Copy link
Contributor

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

@crobert-1
Copy link
Member

Thanks for filing @povilasv, and for including all of the references! Agreed that this is a bug.

I don't have much context with the Datadog APM .NET Client Libraries repo, but is it connected to OpenTelemetry (or supposed to match the OTEL semantic conventions)? If so, could you also file an issue against that repository as well to let them know it's not matching the spec? It's good to handle this case in our repo either way, but the source of the issue should also be addressed if it's not aligning with a spec it's supposed to line up with.

@crobert-1 crobert-1 removed the needs triage New item requiring triage label Nov 23, 2023
@povilasv
Copy link
Contributor Author

I don't think the Datadog APM .NET Client Libraries is connected to OpenTelemetry, they use their own data model and protobufs and send the data, we receive it via datadodreceiver and transform to Otel.

So I don't think it makes sense to ask Datadog folks to change some header

jpkrohling pushed a commit that referenced this issue Nov 27, 2023
…ET (#29460)

**Description:** <Describe what has changed.>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->

Looks like DataDog's library uses ".NET" as value instead of "dotnet" in
their instrumentation:

See:
https://github.com/DataDog/dd-trace-dotnet/blob/ecb5d5949f6c29dbe99a451c7a3574013cfeb1bd/tracer/src/Datadog.Trace/AgentHttpHeaderNames.cs#L76

So we need to remap ".NET" to "dotnet" to follow OTEL semantic
conventions.


**Link to tracking Issue:** 


#29459

**Testing:** <Describe what testing was performed and which tests were
added.>
- added unit test

**Documentation:** <Describe the documentation added.>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working receiver/datadog
Projects
None yet
Development

No branches or pull requests

2 participants