go-cloud
go-cloud copied to clipboard
all: Migrate to OpenTelemetry
Is your feature request related to a problem? Please describe.
OpenCensus and OpenTracing have merged to form OpenTelemetry, considering of migrate towards OpenTelemetry should be taken
Describe the solution you'd like
Make plans on migrate to OpenTelemetry from OpenCensus.
Describe alternatives you've considered
Keep using OpenCensus as most of the exporter is supported on OpenCensus
Additional context
Both Google Cloud Trace and AWS begins with support on OpenTelemetry.
Is there any migration plan? it would look better if migration is done section by section as it will not introduce too many changes at once.
There are no active plans to do this.
This issue is over one year old. But there is no progress. Both OpenCensus and OpenTracing have merged into OpenTelemetry! So, it's better to move to OpenTelemetry.
@vangent can you share if anything has changed here?
No, nothing has changed.
https://github.com/google/go-cloud/pull/3085 exists, but hasn't seen any action in months.
I still don't understand whether this conversion would be a backwards-compatible change or not.
I included an announcement in todays v0.27.0 release. Let's wait a couple of weeks to see if there's any objection; if not, I'll accept the PR. We'll want to commit to updating all of the packages in this library before the next release.
Fortunately, most packages using OpenCensus in this library have an alternative compatible version in OpenTelemetry. I don't think updating them would be challenging.
Update: stuck on this. @saeidakbari hasn't made any progress in a while. I cloned the PR, but it's not trivial to get tests to pass. I'd also want to update the entire library in one release, and I also haven't been able to figure out how to update the rest of the code base (e.g., blob/blob.go) to OpenTelemetry.
~Are there currently any metrics using OpenCensus or just tracing?~ Go CDK exposes metrics using OpenCensus, not just tracing.
OpenTelemetry metrics specification has only recently been stabilized, and the Go implementation is still in beta. The API has been changing a lot with every release.
I'd wait to migrate until it is stable ~if there are metrics~.
~If there is only tracing,~ Once it is stable, I think I can help to update the tests.
otel metrics are stable now: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.16.0
Update: no progress here and I'm not super motivated, if anyone wants to contribute the port that would be welcome.
@vangent Do you have a branch or something locally with you in-progress work, besides #3189? The last commit there is from nearly a month before your previous update here.
You mentioned previously about problems on how to test the telemetry. Is that the only thing missing? I just recently migrated multiple of our services to OpenTelemetry v1, in multiple langs, so I had to figure those out already.
Nope, that pull request is all I have. A contributor did some work to convert the server package, it looked OK at first glance but I didn't look at it closely. I tried the other packages (which don't use OpenCensus much) but it wasn't obvious to me what to do.
I guess folks must be using a cached version of gocloud. It seems a few months ago github.com/mitchellh/osext repo was delete and can no longer be accessed. I'm assuming it was previously archived.