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
Switch to OpenTelemetry #341
Comments
Current hurdles:
Basically, the various components required to make this work well are still in a state of flux and requires a lot more effort than anticipated to patch over the holes. |
Distributed traces work if the propagation format is set to W3C trace context or B3. // W3C Trace Context
otel.SetTextMapPropagator(propagation.TraceContext{})
// B3
b3propagator := b3.New(b3.WithInjectEncoding(b3.B3MultipleHeader | b3.B3SingleHeader))
otel.SetTextMapPropagator(b3propagator) Annoyingly, the bridge library outputs a message on startup:
Switching to the metrics bridge might fix this but, of course, they don't support the Prometheus exporter: open-telemetry/opentelemetry-go#2204 gRPC distributed tracing requires clients to use the binary propagation format from contrib because it has been temporarily removed: open-telemetry/opentelemetry-go#628 #443 adds partial support for traces with the caveats described above. As the Otel library and the ecosystem matures, we need to revisit this task and improve our integration.
|
Add ability to configure OTLP trace exporters with more options such as the choice of protocols, sampler configuration, TLS settings etc. As part of this change, the `tracing` configuration block in the Cerbos configuration file has been completely deprecated with the aim of removing it in the release after next. This is because of the following reasons: - Jaeger native protocol is no longer supported by the Otel SDK. - The Otel specification defines standard environment variables that can be used to configure OTLP exporters. Trying to replicate all possible configuration options in our configuration would be brittle and just complicate our code and documentation for not much benefit. Fixes #1784 Part of #341 --------- Signed-off-by: Charith Ellawala <charith@cerbos.dev>
…cs (#1887) OpenCensus is now EOL and OpenTelemetry is stable ('ish) enough to migrate to. The metrics names have not changed but, due to quirks in exporters, there could be minor breaking changes to existing dashboards with this change. Also adds support for pushing metrics through OTLP. Fixes #341 --------- Signed-off-by: Charith Ellawala <charith@cerbos.dev>
Now that the Go OpenTelemetry SDK has reached GA, investigate whether we can migrate away from OpenCensus.
The last time we looked into this Otel SDK was not production ready and there was very little support for metrics and gRPC tracing.
The text was updated successfully, but these errors were encountered: