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

Add Zipkin exporter support #375

Closed
trask opened this issue May 1, 2020 · 10 comments
Closed

Add Zipkin exporter support #375

trask opened this issue May 1, 2020 · 10 comments
Assignees

Comments

@trask
Copy link
Member

trask commented May 1, 2020

Zipkin exporter is available now in otel-java 0.4.0-SNAPSHOT, and will be available soon in the otel-java 0.4.0 release.

@trask trask added the contribution welcome Request makes sense, maintainers probably won't have time, contribution would be welcome label May 1, 2020
@trask trask added this to the v0.3.0 milestone May 1, 2020
@malafeev
Copy link
Contributor

malafeev commented May 5, 2020

can I work on this issue and to be assigned? cannot do it myself.

@trask trask assigned trask and malafeev and unassigned trask May 5, 2020
@trask
Copy link
Member Author

trask commented May 5, 2020

awesome! assigned to you

@trask trask removed the contribution welcome Request makes sense, maintainers probably won't have time, contribution would be welcome label May 6, 2020
@malafeev
Copy link
Contributor

malafeev commented May 7, 2020

blocked by open-telemetry/opentelemetry-java#1182

@trask
Copy link
Member Author

trask commented May 17, 2020

This should be unblocked now by the opentelemetry-java 0.4.1 release 👍

@malafeev
Copy link
Contributor

great, I will proceed.

@malafeev
Copy link
Contributor

malafeev commented May 18, 2020

zipkin exporter uses HttpURLConnection to send spans to the backend therefore it's self-traced.
@trask is it possible to disable HttpURLConnection tracing for zipkin auto-exporter?

malafeev added a commit to malafeev/opentelemetry-auto-instr-java that referenced this issue May 18, 2020
Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>
malafeev added a commit to malafeev/opentelemetry-auto-instr-java that referenced this issue May 18, 2020
Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>
@trask
Copy link
Member Author

trask commented May 18, 2020

Oh that's interesting! We don't normally have this problem since we exclude the exporter class loader from any bytecode instrumentation, but HttpURLConnection is in the bootstrap class loader 🙃.

I think probably the easiest thing is for us to configure Zipkin to use OkHttpSender instead, e.g.

ZipkinExporterConfiguration.builder()
    .setSender(OkHttpSender.create(zipkinEndpoint))
    .setServiceName(serviceName)
    .build()

malafeev added a commit to malafeev/opentelemetry-auto-instr-java that referenced this issue May 19, 2020
Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>
malafeev added a commit to malafeev/opentelemetry-auto-instr-java that referenced this issue May 19, 2020
Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>
@devinsba
Copy link
Contributor

👍 to what @trask trask said. The most common http reporter used by ZIpkin users is the OkHttp one, it is the default in spring-cloud-sleuth. The URLConnection one exists mostly in the case of classpath issues. (cc @adriancole in case he has any opinions)

That brings up a second thought for me. Can you create an issue to add configuration that would allow for using the other reporter options (kafka, rabbit, etc.)

@malafeev
Copy link
Contributor

@devinsba I added OkHttpSender, and created #417 for other options

@trask trask modified the milestones: v0.3.0, v0.4.0 May 19, 2020
trask added a commit that referenced this issue May 19, 2020
* #375 Add Zipkin exporter support

Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>

* #375 use OkHttpSender for Zipkin exporter

Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>

* #375 add Zipkin exporter to README

Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
@malafeev
Copy link
Contributor

done via #411
can be closed now

@trask trask closed this as completed May 20, 2020
iNikem added a commit that referenced this issue May 31, 2020
* Define packages in exporter class loader (#409)

* Update docs about needing java 11 to build (#412)

* Update version to 0.3.0 (#413)

* Update the README (#414)

* Move build and configure to top as getting started section
* Add manual instrumentation section
* Document `@WithSpan` annotation
* Move developer specific information to CONTRIBUTING.md
* Cleanup formatting and use consistent spacing

* Update version to 0.4.0-SNAPSHOT (#415)

* Update CONTRIBUTING.md back to Java 11 (#419)

* Add Zipkin exporter support  (#411)

* #375 Add Zipkin exporter support

Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>

* #375 use OkHttpSender for Zipkin exporter

Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>

* #375 add Zipkin exporter to README

Signed-off-by: Sergei Malafeev <sergeymalafeev@gmail.com>

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Remove inactive maintainer (#420)

* Fix brolen anchor link (#422)

* Fix khttp instrumentation in case of absent or read-only headers map (#416)

* Add new approver (#429)

* Fix sqlNormalizerEnabled initialization (#432)

* Remove unused config (#424)

* Change names of servlet based server spans (#428)

* Add documentation describing non-obvious points of Servlet instrumentations

* Change names of servlet based server spans

* Fix java google format (#439)

* Remove deprecated usage from internal instrumentation (DataDog/dd-trace-java#1441)

* Update gradle to 6.4 (DataDog/dd-trace-java#1443)

* Migrate lettuce instrumentation away from deprecated finishSpanOnClose (DataDog/dd-trace-java#1445)

* Make Retrys consistent (DataDog/dd-trace-java#1442)

* Rename java packages for lettuce 4 and 5 to not have collisions (DataDog/dd-trace-java#1450)

* Adding an option to manually disable Kafka headers (DataDog/dd-trace-java#1448)

* Add version specific names to allow disabling only a specific version (DataDog/dd-trace-java#1456)

* Attempt to improve muzzle time by randomly ignoring versions until 10 remain (DataDog/dd-trace-java#1451)

* Save circle cache with name matching restore patterns (DataDog/dd-trace-java#1457)

* Wrap log statements using varargs to avoid object allocation (DataDog/dd-trace-java#1466)

* Grizzly-http and grizzly-client instrumentation (DataDog/dd-trace-java#1365)

* More refactoring for ScopeManager (DataDog/dd-trace-java#1467)

* Remove Java 9 and 10 from the build (DataDog/dd-trace-java#1473)

* Disable CI cache for muzzle (DataDog/dd-trace-java#1479)

* Separate out core instrumentation for AWS SDK to allow manual setup o… (#421)

* Separate out core instrumentation for AWS SDK to allow manual setup of instrumentation.

* Instrumentation core test

* Fix sporadic Elasticsearch test failures (#444)

* Fix sporadic grizzly test failure (#448)

* Fixes integration with latest version of Finatra (#450)

* #425 allow only one propagator per concern (#451)

* Updates to reflect new repo name (#454)

* Remove printlns that were accidentally committed (#459)

* Remove unnecessary version constant (#455)

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Co-authored-by: Steve Flanders <steve@omnition.io>
Co-authored-by: Sergei Malafeev <sergeymalafeev@gmail.com>
Co-authored-by: Tyler Benson <tyler.benson@datadoghq.com>
Co-authored-by: Nikolay Martynov <mar.kolya@gmail.com>
Co-authored-by: Brian Devins-Suresh <brian.devinssuresh@datadoghq.com>
Co-authored-by: Richard Startin <richard.startin@datadoghq.com>
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
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

No branches or pull requests

3 participants