-
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
Use the OpenTelemetry protocol in the proxy #10111
Comments
We're using a different provider (Lightstep), but we also would like to not run the OpenCensus collector as an intermediate. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions. |
It'd be good if it's possible to get this back on the table:
What I'd also suggest is more flexibility on the span propagation as all OTEL implementations must support W3C TraceContext, Baggage and Jaeger in addition to the older B3 format. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions. |
This is becoming more pressing now, due to some changes in the opentelemetry-collector which started to disable and drop support for the opencensus bridge in current/upcoming versions, see:
Without native OTLP support in linkerd-proxy, one is forced to use an outdated/aging version of the opentelemetry-collector going forward. |
This mirrors and duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. Setting up the proxy to use this exporter will come in a follow-up. (#10111)[linkerd/linkerd2#10111] Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. (#10111)[linkerd/linkerd2#10111] Signed-off-by: Scott Fleener <scott@buoyant.io>
This mirrors and duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. Setting up the proxy to use this exporter will come in a follow-up. (#10111)[linkerd/linkerd2#10111] Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. (#10111)[linkerd/linkerd2#10111] Signed-off-by: Scott Fleener <scott@buoyant.io>
In preparation for supporting the OpenTelemetry protocol for the proxy's traces, this vendors the relevant protobufs as well as some convenience helpers here. This works around the fact that the existing `opentelemetry` crates do not support the version of tonic that we currently use (0.10), and this vendoring can be removed once we update. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This mirrors and duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. Setting up the proxy to use this exporter will come in a follow-up. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This mirrors and duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. Setting up the proxy to use this exporter will come in a follow-up. (#10111)[linkerd/linkerd2#10111] Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This mirrors and duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. Setting up the proxy to use this exporter will come in a follow-up. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
In preparation for supporting the OpenTelemetry protocol for the proxy's traces, this vendors the relevant protobufs as well as some convenience helpers here. This works around the fact that the existing `opentelemetry` crates do not support the version of tonic that we currently use (0.10), and this vendoring can be removed once we update. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This mirrors and duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. Setting up the proxy to use this exporter will come in a follow-up. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \linkerd#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
In preparation for supporting the OpenTelemetry protocol for the proxy's traces, this vendors the relevant protobufs as well as some convenience helpers here. This works around the fact that the existing `opentelemetry` crates do not support the version of tonic that we currently use (0.10), and this vendoring can be removed once we update. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This duplicates most of the logic from the existing OpenCensus exporter to keep the functionality as similar as possible. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter. Changing the default and eventually removing the OpenCensus exporter will come later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \linkerd#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \linkerd#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
OpenCensus is a deprecated protocol and is slated to be removed from upstream collectors soon. This wires up the proxy to optionally use OpenTelmetry as the format for exported traces. Currently, this defaults to the existing OpenCensus exporter, and we can switch the default later. [#10111](linkerd/linkerd2#10111) Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \linkerd#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \linkerd#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \linkerd#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
Allows setting the trace export protocol env var (`LINKERD2_PROXY_TRACE_PROTOCOL`) on instances of the proxy using the existing mechanisms we have today for setting the trace collector endpoint (helm values, annotations, etc.). Currently defaults the protocol to `opencensus` to match the behavior we have today. \#10111 Signed-off-by: Scott Fleener <scott@buoyant.io>
As you can probably tell, we're actively working on this. |
Originally posted by @olix0r in #7672 (comment)
Observability tools and vendors are now starting to support the OTLP protocol directly (See: https://opentelemetry.io/vendors/) so I think this should remain open as it would be ideal not to have to run an intermediary collector that speaks the OpenCensus protocol.
For example we run Datadog in our environment and have configured our applications to send B3 traces there directly. We are propagating the B3 headers through our service mesh but introducing another component to manage is not desirable.
The text was updated successfully, but these errors were encountered: