redpanda-data / connect

Fancy stream processing made operationally mundane
https://docs.redpanda.com/redpanda-connect/about/
8.08k stars 813 forks source link

Support for Elastic APM as a tracer type #686

Open ollieparsley opened 3 years ago

ollieparsley commented 3 years ago

We're starting to invest time into our telemetry and tracing. We have a team that has set up a cluster that supports Elastic APM to that also has support for opentelemetry, but Elastic APM would be the preference. It'd be fantastic to get support in as a new tracer type.

The Elastic API go client is pure go, which is a great start and they've got good documentation: https://pkg.go.dev/go.elastic.co/apm

I believe that this might have been asked for in the past, but didn't have much demand, but maybe this renewed request might have some more interested parties.

:smile: :mag:

Jeffail commented 3 years ago

Hey @ollieparsley, this should be fairly straight forward to implement, looking at the API it seems like the existing jaeger type can be mostly just copied and adapted. What are the drawbacks to using the opentelemetry approach?

ollieparsley commented 3 years ago

@Jeffail Opentelemetry would work, the only issue is that Elastic APM needs an additional collector deployed in order to recevive events. That's not a major issue if it's easier to go for opentelemetry instead of the more specific Elastic APM tracer.

wolfeidau commented 2 years ago

I am looking at tracing for this service as well, keen to use opentelemetry however probably sending to either honeycomb or datadog.

Has there been any thoughts on migrating internals to opentelemetry?

Shouldn't effect jaeger that much, there are outputs for most systems now from opentelemetry.

Could possibly start with a bridge using the existing opentracing you have internally https://pkg.go.dev/go.opentelemetry.io/otel/bridge/opentracing and branch out from there.