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

Move xray propagator from contrib (no history) #4603

Merged
merged 11 commits into from Apr 16, 2024

Conversation

martinkuba
Copy link
Contributor

This is a second alternative to #4544. It adds the opentelemetry-propagator-aws-xray package from contrib without bringing over any history.


part of #4494

It should be possible to configure the xray propagator using the OTEL_PROPAGATORS env variable. This is currently documented here, and it is also part of the lambda spec.

@martinkuba martinkuba requested a review from a team as a code owner April 3, 2024 04:19
Copy link

codecov bot commented Apr 3, 2024

Codecov Report

Merging #4603 (e20d992) into main (c046867) will increase coverage by 0.05%.
Report is 11 commits behind head on main.
The diff coverage is 100.00%.

❗ Current head e20d992 differs from pull request most recent head 30e6fce. Consider uploading reports for the commit 30e6fce to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4603      +/-   ##
==========================================
+ Coverage   92.83%   92.88%   +0.05%     
==========================================
  Files         329      329              
  Lines        9528     9604      +76     
  Branches     2053     2070      +17     
==========================================
+ Hits         8845     8921      +76     
  Misses        683      683              
Files Coverage Δ
...kages/propagator-aws-xray/src/AWSXRayPropagator.ts 100.00% <100.00%> (ø)

... and 7 files with indirect coverage changes

Copy link
Member

@pichlermarc pichlermarc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good 👍 We may need to add/remove some devDependencies (edit: for the changelog, we could mention that it has moved over, and that versions 1.4 through 1.22 have been skipped)

Note to reviewers: this package is already stable in contrib, so we can only make minimal changes to it.

packages/propagator-aws-xray/package.json Outdated Show resolved Hide resolved
packages/propagator-aws-xray/package.json Show resolved Hide resolved
packages/propagator-aws-xray/package.json Show resolved Hide resolved
@pichlermarc pichlermarc mentioned this pull request Apr 3, 2024
3 tasks
@martinkuba
Copy link
Contributor Author

martinkuba commented Apr 9, 2024

... for the changelog, we could mention that it has moved over, and that versions 1.4 through 1.22 have been skipped

I have added this as a feature to changelog. Let me know if you want to classify it differently. And I have added a note in the README of the package about the skipped versions.

@weyert
Copy link
Contributor

weyert commented Apr 10, 2024

Does that mean we could move Google Trace to here too? Would be nice to be able to configure that too

@pichlermarc
Copy link
Member

Does that mean we could move Google Trace to here too? Would be nice to be able to configure that too

No. It's not a well-known propagator according to the specification.

@pichlermarc
Copy link
Member

pichlermarc commented Apr 10, 2024

@martinkuba tests are likely failing due to a different version of @grpc/gprc-js being pulled in.
I'll push some changes to package-lock.json to this PR in a moment that should resolve the build issues.

We'll need to update @grpc/grpc-js and the tests for the exporters in another PR (#4620)

Copy link
Contributor

@trentm trentm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, with a nit in the rEADME.


| Maturity | [Component Owner](../../.github/component_owners.yml) | Compatibility |
| ----------------------------------------- | ----------------------------------------------------- | --------------------- |
| [Stable](../../../CONTRIBUTING.md#stable) | @carolabadeer | API 1.0+<br/>SDK 1.0+ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That link is no longer valid: both the relative path, and there is no "Stable" section in the CONTRIBUTING.md in the core repo.

As well, there is no component_owners.yml in this repo.

Perhaps drop this "## Status" section? Not sure.

@anuraags
Copy link
Contributor

Is there any movement happening on this? Would like to be able to use an official xray propagator in my services.

@pichlermarc
Copy link
Member

Is there any movement happening on this? Would like to be able to use an official xray propagator in my services.

It will be included in the next release 1.24.0.

@pichlermarc pichlermarc merged commit 7f82b80 into open-telemetry:main Apr 16, 2024
18 checks passed
@Flarna
Copy link
Member

Flarna commented Apr 16, 2024

Would like to be able to use an official xray propagator in my services

I don't think it's more official than now just because the repo changes.

@martinkuba
Copy link
Contributor Author

@anuraags You can use the xray propagator now - the lambda instrumentation uses it automatically as well as the lambda layer. You can also configure it manually in the TracerProvider. This change will only make it possible to set the propagator via the env variable.

@weyert
Copy link
Contributor

weyert commented Apr 17, 2024

Does that mean we could move Google Trace to here too? Would be nice to be able to configure that too

No. It's not a well-known propagator according to the specification.

Curious why only one of the major Cloud providers gets special treatment within the OpenTelemetry specification

@Flarna
Copy link
Member

Flarna commented Apr 17, 2024

I guess it's up to other cloud providers (or their users) to create PRs in OTel spec repo to get their special thingies in.

@martinkuba
Copy link
Contributor Author

@weyert It's based on the list of known values for the OTEL_PROPAGATORS env variable defined here. But I don't think there is anything preventing us from adding others.

And as a side note, the intent of this effort is to actually move the xray propagation from lambda instrumentations to the global configuration (via the env var), as having it hard-coded gave x-ray special treatment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants