-
Notifications
You must be signed in to change notification settings - Fork 9.2k
HADOOP-15566 initial changes for opentelemetry - WIP #2816
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
Conversation
|
This is a great start! now, is there any way we can get the hadoop-api wrappers to bind to open telemetry without needing all the new jars on the CP? As I think while it's fine to have them on the path during compilation, at runtime it's adding a lot more dependencies. In fact, I worry about what transitive dependencies they pull it which will have people downstream of hadoop common "expressing their concerns" -or worse, refusing to upgrade. |
|
OpenTelemetry has an API jar and an SDK jar. The API jar is the one on which your code needs to depend the most, and it brings no additional dependencies. But in order to actually export the telemetry, you do need an SDK. There should be a way to initialize the SDK at runtime without creating a compile time dependency. |
steveloughran
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry, I'd done a review but hadn't hit the submit button. Here's my (late) initial review
| <dependency> | ||
| <groupId>io.opentelemetry</groupId> | ||
| <artifactId>opentelemetry-api</artifactId> | ||
| <version>1.0.0</version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all these imports
- need to be declared in hadoop-project/pom.xml
- and if the api and sdk are to be kept in sync, with the version defined in a property
- The hadoop-common import should declare as all those only needed for build and test.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@steveloughran Thanks for the review. I will make these changes in next 2-3 days.
|
|
||
| public class Span implements Closeable { | ||
|
|
||
| io.opentelemetry.api.trace.Span span = null; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
private
|
|
||
| public SpanContext getContext() { | ||
| return null; | ||
| return new SpanContext(span.getSpanContext()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what if span == null
|
|
||
| public void close() { | ||
| if(span != null){ | ||
| span.end(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
set span to null, presumably
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
@steveloughran I have made changes to use opentelemetry-autoinitialse which needs the exporter only in runtime. while using the opentelemetry-jaeger-exporter I see some conflicts. I am planning to shade the opentelemetry-exporter-jaeger and place it in https://github.com/apache/hadoop-thirdparty. Please let me know if any other options available. |
|
💔 -1 overall
This message was automatically generated. |
|
..yes. I need to catch up with my reviewing. I've not forgotten this, and I'm not giving it any less attention than all those other PRs I need to review.... |
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
@ArkenKiran, would you mind sharing the steps you used to verify the changes locally ? Thanks |
|
We're closing this stale PR because it has been open for 100 days with no activity. This isn't a judgement on the merit of the PR in any way. It's just a way of keeping the PR queue manageable. |

NOTICE
Please create an issue in ASF JIRA before opening a pull request,
and you need to set the title of the pull request which starts with
the corresponding JIRA issue number. (e.g. HADOOP-XXXXX. Fix a typo in YYY.)
For more details, please see https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute