diff --git a/content/en/blog/2023/sunsetting-opencensus.md b/content/en/blog/2023/sunsetting-opencensus.md new file mode 100644 index 000000000000..c6c7a9870161 --- /dev/null +++ b/content/en/blog/2023/sunsetting-opencensus.md @@ -0,0 +1,100 @@ +--- +title: Sunsetting OpenCensus +linkTitle: Sunsetting OpenCensus +date: 2023-05-01 +author: '[Aaron Abbott](https://github.com/aabmass) (Google)' +--- + +In 2019, we announced that OpenTracing and OpenCensus would be merging to form +the OpenTelemetry project. From the start, we considered OpenTelemetry +[to be the next major version of both OpenTracing and OpenCensus](https://www.cncf.io/blog/2019/05/21/a-brief-history-of-opentelemetry-so-far/). + +We are excited to announce that OpenTelemetry has reached feature parity with +OpenCensus in C++, .NET, Go, Java, JavaScript, PHP and Python. +[Stable releases](/docs/instrumentation/#status-and-releases) of both the +Tracing and Metrics SDKs are available in most of these languages with Go and +PHP soon to follow. This means that OpenTelemetry can collect and export +telemetry data with the same level of functionality as OpenCensus. Beyond that, +OpenTelemetry offers a [richer ecosystem](/ecosystem) of instrumentation +libraries and exporters, and an +[active open source community](https://www.cncf.io/blog/2023/01/11/a-look-at-the-2022-velocity-of-cncf-linux-foundation-and-top-30-open-source-projects/). + +As a result, we will be archiving all OpenCensus GitHub repositories (with the +exception of [census-instrumentation/opencensus-python][][^python-timeline]) on +July 31st, 2023. We are excited to see the +[long term plan for OpenTelemetry](https://medium.com/opentracing/a-roadmap-to-convergence-b074e5815289) +coming to fruition and encourage all users of OpenCensus to migrate to +OpenTelemetry. + +## How to Migrate to OpenTelemetry + +One of the +[key goals](https://medium.com/opentracing/merging-opentracing-and-opencensus-f0fe9c7ca6f0) +of the OpenTelemetry project is to provide backward compatibility with +OpenCensus and a migration story for existing users. + +To help ease the migration path, we have provided backward compatibility bridges +in [Go][go shim], [Java][java shim], [JavaScript][js shim][^shim-next-release], +and [Python][python shim][^shim-next-release]. Installing these bridges allows +OpenCensus and OpenTelemetry instrumentation to smoothly interoperate, with all +of your telemetry flowing out of OpenTelemetry exporters. This lets OpenCensus +users incrementally transition all of their instrumentation from OpenCensus to +OpenTelemetry, and finally remove OpenCensus libraries from their +applications[^shim-support]. + +While OpenTelemetry was never intended to be a strict superset of OpenCensus, +most of the APIs and data models are compatible. Migration should be considered +a "major version bump" and you may notice some changes in your telemetry. + +More details on what to expect and some suggested workflows for migration are +outlined in the +[OpenCensus Compatibility specification](/docs/reference/specification/compatibility/opencensus#migration-path)[^spec-next-release]. + +## What to Expect After July 31st, 2023 + +After July 31st, 2023, the OpenCensus project will no longer be maintained. This +means that there will be no new features added to the project, and any security +vulnerabilities that are found will not be patched. + +However, the OpenCensus repositories will remain archived on GitHub. This means +users will still be able to download the OpenCensus code and use it in their +projects. Existing releases of OpenCensus will remain available in public +package repositories like NPM and PyPI. **We encourage all OpenCensus users to +begin planning your migration to OpenTelemetry now.** + +One exception to this is the +[census-instrumentation/opencensus-python][][^python-timeline] repo. + +[go shim]: + https://github.com/open-telemetry/opentelemetry-go/tree/main/bridge/opencensus +[java shim]: + https://github.com/open-telemetry/opentelemetry-java/tree/main/opencensus-shim +[python shim]: + https://github.com/open-telemetry/opentelemetry-python/tree/main/shim/opentelemetry-opencensus-shim +[js shim]: + https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-shim-opencensus +[census-instrumentation/opencensus-python]: + https://github.com/census-instrumentation/opencensus-python + +[^python-timeline]: + A number of projects within this repository are still being used as + recommended production solutions. These projects will continue to be + maintained. Please reach out to the individual maintainers for details + regarding maintenance timeline, next steps for migration and general support + questions. + +[^shim-next-release]: + Python and JavaScript shim packages are currently unreleased but will be + available in future releases. + +[^spec-next-release]: + The + [OpenCensus Compatability specification](https://opentelemetry.io/docs/reference/specification/compatibility/opencensus/) + is marked stable for the next specification release. + +[^shim-support]: + These shims implement the stable + [OpenCensus Compatibility specification](/docs/reference/specification/compatibility/opencensus#migration-path)[^spec-next-release] + and will be supported for at least one year following + [OpenTelemetry's long term support](https://opentelemetry.io/docs/reference/specification/versioning-and-stability/#long-term-support) + guidelines. diff --git a/static/refcache.json b/static/refcache.json index 19bf6747d008..f5c7fbaf2156 100644 --- a/static/refcache.json +++ b/static/refcache.json @@ -1419,6 +1419,10 @@ "StatusCode": 200, "LastSeen": "2023-02-20T07:43:37.8719-05:00" }, + "https://github.com/aabmass": { + "StatusCode": 200, + "LastSeen": "2023-04-24T16:54:54.131842195Z" + }, "https://github.com/aishyandapalli": { "StatusCode": 200, "LastSeen": "2023-02-20T08:12:22.870564-05:00" @@ -1499,6 +1503,10 @@ "StatusCode": 200, "LastSeen": "2023-02-20T08:02:57.433517-05:00" }, + "https://github.com/census-instrumentation/opencensus-python": { + "StatusCode": 200, + "LastSeen": "2023-04-24T16:54:55.217650606Z" + }, "https://github.com/census-instrumentation/opencensus-specs": { "StatusCode": 200, "LastSeen": "2023-02-20T08:00:55.574495-05:00" @@ -3111,6 +3119,14 @@ "StatusCode": 200, "LastSeen": "2023-02-16T17:17:36.925688-05:00" }, + "https://medium.com/opentracing/a-roadmap-to-convergence-b074e5815289": { + "StatusCode": 200, + "LastSeen": "2023-04-24T16:54:55.28743128Z" + }, + "https://medium.com/opentracing/merging-opentracing-and-opencensus-f0fe9c7ca6f0": { + "StatusCode": 200, + "LastSeen": "2023-04-24T16:54:55.343964078Z" + }, "https://medium.com/p/42337e994b63": { "StatusCode": 200, "LastSeen": "2023-02-16T17:15:39.339631-05:00" @@ -3915,10 +3931,18 @@ "StatusCode": 206, "LastSeen": "2023-02-18T13:37:44.838318-05:00" }, + "https://www.cncf.io/blog/2019/05/21/a-brief-history-of-opentelemetry-so-far/": { + "StatusCode": 206, + "LastSeen": "2023-04-24T16:54:54.215591367Z" + }, "https://www.cncf.io/blog/2021/08/26/opentelemetry-becomes-a-cncf-incubating-project/": { "StatusCode": 206, "LastSeen": "2023-02-18T13:37:50.760488-05:00" }, + "https://www.cncf.io/blog/2023/01/11/a-look-at-the-2022-velocity-of-cncf-linux-foundation-and-top-30-open-source-projects/": { + "StatusCode": 206, + "LastSeen": "2023-04-24T16:54:54.873649488Z" + }, "https://www.cncf.io/projects/": { "StatusCode": 206, "LastSeen": "2023-02-18T13:34:56.607908-05:00"