-
Notifications
You must be signed in to change notification settings - Fork 881
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
More stable selection of exporter to use #511
Comments
I like both options from the comment above:
I probably would favour the second option, it is more user-friendly. |
👍 to the user-friendly option |
To clarify, I didn't mean to necessarily have to pick between two options :) We can accept both a fully qualified name (will be useful for people shading their own agent binary with a potentially custom exporter) and the short one for well known exporters to have and eat the cake |
While talking about classifiers had a new thought. Instead of a set of short names, we don't really need any short names. How about automatically activating an exporter based on the presence of the endpoint flag, like Well, looking at the original post again this doesn't work for logging :) But ota.logging.file=stdout or /var/log/ota.txt could be a nice option too. ota.logging.enabled for special exporters that don't need options like endpoints can work. And gives us the power of multiple exporters |
I like this proposal. Also, it addresses this part of #385:
|
And #496 |
Does it make sense to close this issue and move the proposal over to #496? |
Closing, moved above proposal over to #496 |
Isn't it quite normal to use the fully qualified class name when selecting an SPI implementation? SDK currently uses the approach too. It's guaranteed to be unique based on the nature of a Java classpath, while a name provided by a method has chances of collision which seems like something we don't want to deal with.
Having a hard-coded mapping from a short name to the fully qualified name for well-known implementations in the agent like otlp, logging, jaeger and zipkin seems like it could also provide the simpler UX without the risk of conflicting names from random exporters on the classpath.
Originally posted by @anuraaga in open-telemetry/opentelemetry-java#1332 (comment)
The text was updated successfully, but these errors were encountered: