-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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 distributed tracing support #2128
Comments
To implement this feature, the OpenTelemetry Go instrumentation is one of the best options. The main benefit versus other instrumentation libraries, is that it supports multiple propagators out of the box! For reference, I created a small repo showcasing all of them: https://github.com/dgzlopes/kicktrace Anyway, this needs some research :) |
@dgzlopes Hello, this is a very nice feature for k6. I would be so honored to work on this, I read and studied the reference code you wrote it's awesome. |
Hi @adeniyistephen! Thanks for your interest in the project and this feature. And sorry for my late response (these days, my notification feed is a mess!) Sadly, I think that we are not ready to accept contributions in this area. Even if the feature looks straightforward and well-defined, sadly, it's not! It will require further discussions on the core team and dedicated time from a maintainer to design/implement the initial iteration. Having said that, we have some issues tagged as Another good way to get into k6 is by developing k6 extensions. These can be as big/complex as you want while adding a lot of functionality to k6 and its ecosystem. For example, the community has developed extensions to load test/interact with Kafka, Redis, Docker registries, Kubernetes clusters, relational databases, and tons of things. I've some extension ideas for load testing distributed tracing backends (Jaeger, Tempo, Zipkin). Feel free to reach me on Slack or email (dgzlopes at grafana dot com) if that sounds interesting! Or you want to chat a bit :) |
Interesting 👍 |
@dgzlopes |
The idea is to add distributed tracing support to k6.
That means, that if your system under test is instrumented, k6 will be able to start the trace itself and propagate it downwards.
For the first version of this feature, would be interesting to have:
What this feature doesn't cover:
Also, we should inject some information about k6 and the test on the traces that we start. That will be handy in case someone wants to apply different retentions or sampling strategies to the traces started by a k6 instance.
The text was updated successfully, but these errors were encountered: