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 AWS X-Ray Propagator into its own opentelemetry-propagators-aws package #720

Conversation

NathanielRN
Copy link
Contributor

@NathanielRN NathanielRN commented Oct 11, 2021

Description

Recently the AWS team discovered that we made the error of bundling the AWSXrayFormat propagator with the rest of the code in the opentelemetry-sdk-extension-aws package. While the AWSXrayIdGenerator and Aws<Service>ResourceDetector need a direct dependency on the opentelemetry-sdk package, the AWSXrayFormat propagator should only depend on the opentelemetry-api package.

This became obvious to us when we started making plans to upstream the OpenTelemetry Lambda Python Package and to get the propagator, would have to take a dependency on opentelemetry-sdk. This is wrong because none of the instrumentation depend on opentelemetry-sdk.

This matches the pattern we have in other languages:

In JavaScript:

(JS splits the detectors & ID Generator but we shouldn't have to)

In Java:

etc.

The solution we propose is a new opentelemetry-propagators-aws package to hold just the propagator.

Since the opentelemetry-sdk-extension-aws package is already released as 1.0.1, this must be a breaking change to 1.1.0.

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested?

We moved all the unit tests to

Does This PR Require a Core Repo Change?

  • No.

Checklist:

See contributing.md for styleguide, changelog guidelines, and more.

  • Followed the style guidelines of this project
  • Changelogs have been updated
  • Unit tests have been added
  • Documentation has been updated

@NathanielRN NathanielRN requested a review from a team as a code owner October 11, 2021 17:56
@NathanielRN NathanielRN force-pushed the move-aws-xray-propagator-into-own-package branch 2 times, most recently from 20ec83f to 13f6f86 Compare October 11, 2021 17:58
@owais
Copy link
Contributor

owais commented Oct 11, 2021

Since the opentelemetry-sdk-extension-aws package is already released as 1.0.1, this must be a breaking change to 1.1.0.

In that case shouldn't the next version of opentelemetry-sdk-extension-aws be 2.0 ?

@NathanielRN NathanielRN force-pushed the move-aws-xray-propagator-into-own-package branch 4 times, most recently from 608d87a to 7697f30 Compare October 11, 2021 19:46
@NathanielRN
Copy link
Contributor Author

In that case shouldn't the next version of opentelemetry-sdk-extension-aws be 2.0 ?

Yeah this makes sense! It's unfortunate because basically no code changed... but it's a breaking API change so we should bump to 2.0.0. I've updated it as so!

@NathanielRN NathanielRN force-pushed the move-aws-xray-propagator-into-own-package branch from 7697f30 to da317e5 Compare October 11, 2021 19:49
@lzchen
Copy link
Contributor

lzchen commented Oct 11, 2021

@NathanielRN
Probably need to update component_owners.yml as well.

@ocelotl ocelotl enabled auto-merge (squash) October 12, 2021 15:22
@ocelotl ocelotl merged commit 224780f into open-telemetry:main Oct 12, 2021
NathanielRN added a commit to NathanielRN/opentelemetry-python-contrib-1 that referenced this pull request Dec 20, 2021
* When we moved the aws-xray propagator in open-telemetry#720, we needed to update the benchmark step of the workflow
* Additionally, the GH action has evolved since we added benchmarks so we should use the latest version
NathanielRN added a commit to NathanielRN/opentelemetry-python-contrib-1 that referenced this pull request Dec 21, 2021
* When we moved the aws-xray propagator in open-telemetry#720, we needed to update the benchmark step of the workflow
* Additionally, the GH action has evolved since we added benchmarks so we should use the latest version
owais pushed a commit that referenced this pull request Dec 23, 2021
* Include propagator benchmarks + latest GH action
* When we moved the aws-xray propagator in #720, we needed to update the benchmark step of the workflow
* Additionally, the GH action has evolved since we added benchmarks so we should use the latest version

* Merge all parallel benchmarks after they complete
ItayGibel-helios pushed a commit to helios/opentelemetry-python-contrib that referenced this pull request Dec 26, 2021
…en-telemetry#838)

* Include propagator benchmarks + latest GH action
* When we moved the aws-xray propagator in open-telemetry#720, we needed to update the benchmark step of the workflow
* Additionally, the GH action has evolved since we added benchmarks so we should use the latest version

* Merge all parallel benchmarks after they complete
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

4 participants