-
Notifications
You must be signed in to change notification settings - Fork 5
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
How to use elastic features while still using "vanilla" otel? #83
Comments
Hi, @JanKnipp. Thanks for raising this great question, and we're also pleased to hear that you like the way our efforts are being directed! We've been thinking about this, and we have not yet settled on a final decision. One option is that we ship things such as processors in their own package, with A second option we've been considering is having an extra option on I have my own thoughts on what I prefer, but we'd love to get your feedback. We'd also like to understand your "special configurations" and how the current design prevents them. Are you able to share anything concrete? This would be valuable to guide our design decisions going forward. We'd hoped consumers would be able to configure the OTel components without our additions behind the scenes causing any impedance. In the meantime, working around the lack of better options is possible by directly calling the original "vanilla" OpenTelemetry Microsoft.Extensions.DependencyInjection.OpenTelemetryServicesExtensions.AddOpenTelemetry(builder.Services)
.WithTracing(t => t
.AddSource(Api.ActivitySourceName)
.AddElasticProcessors()); |
Hi @stevejgordon, we're actually not that super special but there are some things in our configuration that are a bit different. First of all we currently do not use the logging parts of OTel. Things might have changed by now but last time I checked the logging integration was not as good as using serilog with the opentelemetry sink (and we're also logging to file for compliance reasons). So from my point of view it would be great to keep all this exactly as it is and to stay as close to native Otel as possible while being as compatible to elastic as possible. We'd rather skip all the elastic goodies then switching to something like an Elastic wrapper around Otel. I can see why this is a very good option for a lot of users or people who switch over from the elastic apm nuget packages. I have no problem with adding i.e. the elastic processors with an AddElasticProcessors extension it would be great if this would be documented in some place (one the complexity gets higher than this). Rereading the documentation i'm currently not so sure any more if I missunderstood the ability to customize the elastic provided otel packages and all this would be possible. |
@JanKnipp I've refined our configuration story and included some documentation around its use. In short, there's a new option to selectively opt into our defaults (or disable them for all signals). Does that provide enough control for your scenario? This will make it into the next alpha (hopefully quite soon) Regarding:
Did you recall what you felt wasn't as good in this set up? I'd be curious to see if that's something that can be addressed upstream if it's still an issue. |
This is now implemented through: #131 also allows you to do this trough configuration and we listen to OTEL configuration around enabling/signals too. Thanks for ensuring this is going to part of our initial release @JanKnipp ! |
Hi,
we are long time elastic users but decided a while ago that auto-instrumentation and the elastic nuget APM packages were not the best option for us and decided to fully switch to OTel and live with the shortcomings (i.e. metrics in Kibana APM, etc.).
We have some special configurations and stuff going on in OTel so we would still like to use the "vanilla" configuration way but also be able to get a better integration into elastic that this package may provide.
Is there (apart from manually checking the code) way to integrate your processors, etc. into the OTel configuration or a chance that in the future there might be an extention method that provided this?
something like
This would allow us to still do it on our own (like configure instrumentation, exporters, etc) but still get some of the goodies that you are providing apart from the "easy" installation (which is of course great for some users and I really like the way this is going regard the use of OTel vs. Elastic APM).
Regards,
Jan
The text was updated successfully, but these errors were encountered: