From ced177b79530b937530c4f9030ab2115367c5de9 Mon Sep 17 00:00:00 2001 From: Anthony Mirabella Date: Fri, 18 Jun 2021 11:22:16 -0400 Subject: [PATCH] Pre-release 1.0.0-RC1 (#2013) * Add versions.yaml to specify module version sets * Prepare for releasing v1.0.0-RC1 * Update experimental-metrics and bridge module sets to v0.21.0 * Prepare for releasing v0.21.0 * Fixup go.mod version references * Update version.go * Update CHANGELOG * Update godoc references to "pre-GA phase" for RC1 packages * Update website_docs for 1.0.0-RC1 Signed-off-by: Anthony J Mirabella --- CHANGELOG.md | 73 ++++++++++++------- attribute/doc.go | 5 +- baggage/doc.go | 5 +- bridge/opencensus/go.mod | 12 +-- bridge/opentracing/go.mod | 4 +- codes/doc.go | 5 +- doc.go | 5 +- example/jaeger/go.mod | 6 +- example/namedtracer/go.mod | 8 +- example/opencensus/go.mod | 12 +-- example/otel-collector/go.mod | 8 +- example/passthrough/go.mod | 8 +- example/prometheus/go.mod | 10 +-- example/zipkin/go.mod | 8 +- exporters/jaeger/doc.go | 5 +- exporters/jaeger/go.mod | 6 +- exporters/metric/prometheus/go.mod | 10 +-- exporters/otlp/otlpmetric/go.mod | 10 +-- .../otlp/otlpmetric/otlpmetricgrpc/go.mod | 8 +- exporters/otlp/otlptrace/go.mod | 8 +- exporters/otlp/otlptrace/otlptracegrpc/go.mod | 6 +- exporters/otlp/otlptrace/otlptracehttp/doc.go | 6 +- exporters/otlp/otlptrace/otlptracehttp/go.mod | 4 +- exporters/prometheus/go.mod | 10 +-- exporters/stdout/stdoutmetric/go.mod | 10 +-- exporters/stdout/stdouttrace/doc.go | 5 +- exporters/stdout/stdouttrace/go.mod | 8 +- exporters/trace/jaeger/go.mod | 6 +- exporters/trace/zipkin/go.mod | 6 +- exporters/zipkin/doc.go | 5 +- exporters/zipkin/go.mod | 6 +- go.mod | 4 +- internal/metric/go.mod | 4 +- metric/go.mod | 4 +- oteltest/doc.go | 5 +- oteltest/go.mod | 4 +- propagation/doc.go | 5 +- sdk/export/metric/go.mod | 6 +- sdk/go.mod | 6 +- sdk/instrumentation/library.go | 5 +- sdk/metric/go.mod | 10 +-- sdk/resource/doc.go | 5 +- sdk/trace/doc.go | 5 +- semconv/v1.4.0/doc.go | 5 +- trace/doc.go | 5 +- trace/go.mod | 2 +- version.go | 2 +- versions.yaml | 56 ++++++++++++++ website_docs/_index.md | 2 +- website_docs/exporting_data.md | 28 +++++-- website_docs/getting-started.md | 41 ++++++----- website_docs/instrumentation.md | 4 +- 52 files changed, 289 insertions(+), 207 deletions(-) create mode 100644 versions.yaml diff --git a/CHANGELOG.md b/CHANGELOG.md index 59e7a43651e..27ff1bbb201 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,24 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ### Added +### Changed + +### Deprecated + +### Removed + +### Fixed + +### Security + +## [1.0.0-RC1] / 0.21.0 - 2021-06-18 + +With this release we are introducing a split in module versions. The tracing API and SDK are entering the `v1.0.0` Release Candidate phase with `v1.0.0-RC1` +while the experimental metrics API and SDK continue with `v0.x` releases at `v0.21.0`. Modules at major version 1 or greater will not depend on modules +with major version 0. + +### Added + - Adds `otlpgrpc.WithRetry`option for configuring the retry policy for transient errors on the otlp/gRPC exporter. (#1832) - The following status codes are defined as transient errors: | gRPC Status Code | Description | @@ -21,23 +39,23 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm | 10 | Out of Range | | 14 | Unavailable | | 15 | Data Loss | -- The `Status` type was added to the `go.opentelemetry.io/otel/sdk/trace` package to represent the status of a span. (#1874) -- The `SpanStub` type and its associated functions were added to the `go.opentelemetry.io/otel/sdk/trace/tracetest` package. +- Added `Status` type to the `go.opentelemetry.io/otel/sdk/trace` package to represent the status of a span. (#1874) +- Added `SpanStub` type and its associated functions to the `go.opentelemetry.io/otel/sdk/trace/tracetest` package. This type can be used as a testing replacement for the `SpanSnapshot` that was removed from the `go.opentelemetry.io/otel/sdk/trace` package. (#1873) - Adds support for scheme in `OTEL_EXPORTER_OTLP_ENDPOINT` according to the spec. (#1886) - Adds `trace.WithSchemaURL` option for configuring the tracer with a Schema URL. (#1889) -- An example of using OpenTelemetry Go as a trace context forwarder. (#1912) +- Added an example of using OpenTelemetry Go as a trace context forwarder. (#1912) - `ParseTraceState` is added to the `go.opentelemetry.io/otel/trace` package. It can be used to decode a `TraceState` from a `tracestate` header string value. (#1937) -- The `Len` method is added to the `TraceState` type in the `go.opentelemetry.io/otel/trace` package. +- Added `Len` method to the `TraceState` type in the `go.opentelemetry.io/otel/trace` package. This method returns the number of list-members the `TraceState` holds. (#1937) - Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace` that defines a trace exporter that uses a `otlptrace.Client` to send data. Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc` implementing a gRPC `otlptrace.Client` and offers convenience functions, `NewExportPipeline` and `InstallNewPipeline`, to setup and install a `otlptrace.Exporter` in tracing .(#1922) -- The `Baggage`, `Member`, and `Property` types are added to the `go.opentelemetry.io/otel/baggage` package along with their related functions. (#1967) -- The new `ContextWithBaggage`, `ContextWithoutBaggage`, and `FromContext` functions were added to the `go.opentelemetry.io/otel/baggage` package. +- Added `Baggage`, `Member`, and `Property` types to the `go.opentelemetry.io/otel/baggage` package along with their related functions. (#1967) +- Added `ContextWithBaggage`, `ContextWithoutBaggage`, and `FromContext` functions to the `go.opentelemetry.io/otel/baggage` package. These functions replace the `Set`, `Value`, `ContextWithValue`, `ContextWithoutValue`, and `ContextWithEmpty` functions from that package and directly work with the new `Baggage` type. (#1967) - The `OTEL_SERVICE_NAME` environment variable is the preferred source for `service.name`, used by the environment resource detector if a service name is present both there and in `OTEL_RESOURCE_ATTRIBUTES`. (#1969) -- Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp` implementing a HTTP `otlptrace.Client` and offers convenience functions, `NewExportPipeline` and `InstallNewPipeline`, to setup and install a `otlptrace.Exporter` in tracing. (#1963) +- Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp` implementing an HTTP `otlptrace.Client` and offers convenience functions, `NewExportPipeline` and `InstallNewPipeline`, to setup and install a `otlptrace.Exporter` in tracing. (#1963) - Changes `go.opentelemetry.io/otel/sdk/resource.NewWithAttributes` to require a schema URL. The old function is still available as `resource.NewSchemaless`. This is a breaking change. (#1938) - Several builtin resource detectors now correctly populate the schema URL. (#1938) - Creates package `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` that defines a metrics exporter that uses a `otlpmetric.Client` to send data. @@ -58,33 +76,33 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - Renamed `CloudZoneKey` to `CloudAvailabilityZoneKey` in Resource semantic conventions according to spec. (#1871) - The `StatusCode` and `StatusMessage` methods of the `ReadOnlySpan` interface and the `Span` produced by the `go.opentelemetry.io/otel/sdk/trace` package have been replaced with a single `Status` method. This method returns the status of a span using the new `Status` type. (#1874) -- The `ExportSpans` method of the`SpanExporter` interface type was updated to accept `ReadOnlySpan`s instead of the removed `SpanSnapshot`. +- Updated `ExportSpans` method of the`SpanExporter` interface type to accept `ReadOnlySpan`s instead of the removed `SpanSnapshot`. This brings the export interface into compliance with the specification in that it now accepts an explicitly immutable type instead of just an implied one. (#1873) - Unembed `SpanContext` in `Link`. (#1877) -- Semantic conventions are now generated from the specification YAML. (#1891) +- Generate Semantic conventions from the specification YAML. (#1891) - Spans created by the global `Tracer` obtained from `go.opentelemetry.io/otel`, prior to a functioning `TracerProvider` being set, now propagate the span context from their parent if one exists. (#1901) - The `"go.opentelemetry.io/otel".Tracer` function now accepts tracer options. (#1902) - Move the `go.opentelemetry.io/otel/unit` package to `go.opentelemetry.io/otel/metric/unit`. (#1903) - Changed `go.opentelemetry.io/otel/trace.TracerConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config.) (#1921) - Changed `go.opentelemetry.io/otel/trace.SpanConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config). (#1921) -- Changed `span.End()` now only accepts Options that are allowed at `end()`. (#1921) +- Changed `span.End()` now only accepts Options that are allowed at `End()`. (#1921) - Changed `go.opentelemetry.io/otel/metric.InstrumentConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config). (#1921) - Changed `go.opentelemetry.io/otel/metric.MeterConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config). (#1921) -- Refactor option types according to the contribution style guide. (#1882) +- Refactored option types according to the contribution style guide. (#1882) - Move the `go.opentelemetry.io/otel/trace.TraceStateFromKeyValues` function to the `go.opentelemetry.io/otel/oteltest` package. This function is preserved for testing purposes where it may be useful to create a `TraceState` from `attribute.KeyValue`s, but it is not intended for production use. The new `ParseTraceState` function should be used to create a `TraceState`. (#1931) -- The `MarshalJSON` method of the `go.opentelemetry.io/otel/trace.TraceState` type is updated to marshal the type in to the string representation of the `TraceState`. (#1931) +- Updated `MarshalJSON` method of the `go.opentelemetry.io/otel/trace.TraceState` type to marshal the type into the string representation of the `TraceState`. (#1931) - The `TraceState.Delete` method from the `go.opentelemetry.io/otel/trace` package no longer returns an error in addition to a `TraceState`. (#1931) -- The `Get` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package has been updated to accept a `string` instead of an `attribute.Key` type. (#1931) -- The `Insert` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package has been updated to accept a pair of `string`s instead of an `attribute.KeyValue` type. (#1931) -- The `Delete` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package has been updated to accept a `string` instead of an `attribute.Key` type. (#1931) -- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/stdout` package. (#1985) -- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/metric/prometheus` package. (#1985) -- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/jaeger` package. (#1985) -- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/zipkin` package. (#1985) -- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985) -- Rename `NewUnstartedExporter` to `NewUnstarted` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985) +- Updated `Get` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package to accept a `string` instead of an `attribute.Key` type. (#1931) +- Updated `Insert` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package to accept a pair of `string`s instead of an `attribute.KeyValue` type. (#1931) +- Updated `Delete` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package to accept a `string` instead of an `attribute.Key` type. (#1931) +- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/stdout` package. (#1985) +- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/metric/prometheus` package. (#1985) +- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/jaeger` package. (#1985) +- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/zipkin` package. (#1985) +- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985) +- Renamed `NewUnstartedExporter` to `NewUnstarted` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985) - The `go.opentelemetry.io/otel/semconv` package has been moved to `go.opentelemetry.io/otel/semconv/v1.4.0` to allow for multiple [telemetry schema](https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md) versions to be used concurrently. (#1987) - Metrics test helpers in `go.opentelemetry.io/otel/oteltest` have been moved to `go.opentelemetry.io/otel/metric/metrictest`. (#1988) @@ -96,7 +114,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ### Removed -- Remove `resource.WithoutBuiltin()`. Use `resource.New()`. (#1810) +- Removed `resource.WithoutBuiltin()`. Use `resource.New()`. (#1810) - Unexported types `resource.FromEnv`, `resource.Host`, and `resource.TelemetrySDK`, Use the corresponding `With*()` to use individually. (#1810) - Removed the `Tracer` and `IsRecording` method from the `ReadOnlySpan` in the `go.opentelemetry.io/otel/sdk/trace`. The `Tracer` method is not a required to be included in this interface and given the mutable nature of the tracer that is associated with a span, this method is not appropriate. @@ -106,13 +124,13 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - Removed the `SpanSnapshot` type from the `go.opentelemetry.io/otel/sdk/trace` package. The use of this type has been replaced with the use of the explicitly immutable `ReadOnlySpan` type. When a concrete representation of a read-only span is needed for testing, the newly added `SpanStub` in the `go.opentelemetry.io/otel/sdk/trace/tracetest` package should be used. (#1873) -- Remove the `Tracer` method from the `Span` interface in the `go.opentelemetry.io/otel/trace` package. +- Removed the `Tracer` method from the `Span` interface in the `go.opentelemetry.io/otel/trace` package. Using the same tracer that created a span introduces the error where an instrumentation library's `Tracer` is used by other code instead of their own. The `"go.opentelemetry.io/otel".Tracer` function or a `TracerProvider` should be used to acquire a library specific `Tracer` instead. (#1900) - The `TracerProvider()` method on the `Span` interface may also be used to obtain a `TracerProvider` using the same trace processing pipeline. (#2009) - The `http.url` attribute generated by `HTTPClientAttributesFromHTTPRequest` will no longer include username or password information. (#1919) -- The `IsEmpty` method of the `TraceState` type in the `go.opentelemetry.io/otel/trace` package is removed in favor of using the added `TraceState.Len` method. (#1931) -- The `Set`, `Value`, `ContextWithValue`, `ContextWithoutValue`, and `ContextWithEmpty` functions in the `go.opentelemetry.io/otel/baggage` package are removed. +- Removed `IsEmpty` method of the `TraceState` type in the `go.opentelemetry.io/otel/trace` package in favor of using the added `TraceState.Len` method. (#1931) +- Removed `Set`, `Value`, `ContextWithValue`, `ContextWithoutValue`, and `ContextWithEmpty` functions in the `go.opentelemetry.io/otel/baggage` package. Handling of baggage is now done using the added `Baggage` type and related context functions (`ContextWithBaggage`, `ContextWithoutBaggage`, and `FromContext`) in that package. (#1967) - The `InstallNewPipeline` and `NewExportPipeline` creation functions in all the exporters (prometheus, otlp, stdout, jaeger, and zipkin) have been removed. These functions were deemed premature attempts to provide convenience that did not achieve this aim. (#1985) @@ -127,7 +145,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - Use `http://localhost:14268/api/traces` as default Jaeger collector endpoint instead of `http://localhost:14250`. (#1898) - Allow trailing and leading whitespace in the parsing of a `tracestate` header. (#1931) - Add logic to determine if the channel is closed to fix Jaeger exporter test panic with close closed channel. (#1870, #1973) -- Avoid transport security when otlp endpoint is a Unix socket. (#2001) +- Avoid transport security when OTLP endpoint is a Unix socket. (#2001) ### Security @@ -1397,7 +1415,8 @@ It contains api and sdk for trace and meter. - CircleCI build CI manifest files. - CODEOWNERS file to track owners of this project. -[Unreleased]: https://github.com/open-telemetry/opentelemetry-go/compare/v0.20.0...HEAD +[Unreleased]: https://github.com/open-telemetry/opentelemetry-go/compare/v1.0.0-RC1...HEAD +[1.0.0-RC1]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.0.0-RC1 [0.20.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.20.0 [0.19.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.19.0 [0.18.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.18.0 diff --git a/attribute/doc.go b/attribute/doc.go index 44bc32c9e07..42d0900527b 100644 --- a/attribute/doc.go +++ b/attribute/doc.go @@ -14,7 +14,6 @@ // package attribute provides key and value attributes. // -// This package is currently in a pre-GA phase. Backwards incompatible changes -// may be introduced in subsequent minor version releases as we work to track -// the evolving OpenTelemetry specification and user feedback. +// This package is currently in a Release Candidate phase. Backwards incompatible changes +// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. package attribute // import "go.opentelemetry.io/otel/attribute" diff --git a/baggage/doc.go b/baggage/doc.go index 4ac3fccee6c..188e53f405c 100644 --- a/baggage/doc.go +++ b/baggage/doc.go @@ -17,8 +17,7 @@ Package baggage provides functionality for storing and retrieving baggage items in Go context. For propagating the baggage, see the go.opentelemetry.io/otel/propagation package. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. */ package baggage // import "go.opentelemetry.io/otel/baggage" diff --git a/bridge/opencensus/go.mod b/bridge/opencensus/go.mod index 66c57dcf73c..857df2c0c54 100644 --- a/bridge/opencensus/go.mod +++ b/bridge/opencensus/go.mod @@ -4,12 +4,12 @@ go 1.15 require ( go.opencensus.io v0.22.6-0.20201102222123-380f4078db9f - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/oteltest v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/oteltest v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel => ../.. diff --git a/bridge/opentracing/go.mod b/bridge/opentracing/go.mod index 329a5f03f80..5325c91ea3f 100644 --- a/bridge/opentracing/go.mod +++ b/bridge/opentracing/go.mod @@ -6,8 +6,8 @@ replace go.opentelemetry.io/otel => ../.. require ( github.com/opentracing/opentracing-go v1.2.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../opencensus diff --git a/codes/doc.go b/codes/doc.go index fcf89ba1ac0..7b60f983c56 100644 --- a/codes/doc.go +++ b/codes/doc.go @@ -15,9 +15,8 @@ /* Package codes defines the canonical error codes used by OpenTelemetry. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track -the evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. It conforms to [the OpenTelemetry specification](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/api.md#statuscanonicalcode). diff --git a/doc.go b/doc.go index 771ce81cc2f..48474942074 100644 --- a/doc.go +++ b/doc.go @@ -16,9 +16,8 @@ Package otel provides global access to the OpenTelemetry API. The subpackages of the otel package provide an implementation of the OpenTelemetry API. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. The provided API is used to instrument code and measure data about that code's performance and operation. The measured data, by default, is not processed or diff --git a/example/jaeger/go.mod b/example/jaeger/go.mod index 558aac074a6..0fcbbefe6be 100644 --- a/example/jaeger/go.mod +++ b/example/jaeger/go.mod @@ -9,9 +9,9 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/jaeger v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/jaeger v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/example/namedtracer/go.mod b/example/namedtracer/go.mod index 9e3de00bc5b..5b32ac878ca 100644 --- a/example/namedtracer/go.mod +++ b/example/namedtracer/go.mod @@ -8,10 +8,10 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/example/opencensus/go.mod b/example/opencensus/go.mod index 60de8857c49..53f3a7a3fb0 100644 --- a/example/opencensus/go.mod +++ b/example/opencensus/go.mod @@ -10,12 +10,12 @@ replace ( require ( go.opencensus.io v0.22.6-0.20201102222123-380f4078db9f - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/bridge/opencensus v0.20.0 - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v0.20.0 - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/bridge/opencensus v0.21.0 + go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v0.21.0 + go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 ) replace go.opentelemetry.io/otel/bridge/opentracing => ../../bridge/opentracing diff --git a/example/otel-collector/go.mod b/example/otel-collector/go.mod index 4dd9b0cc74d..a5b5d1a2c49 100644 --- a/example/otel-collector/go.mod +++ b/example/otel-collector/go.mod @@ -8,10 +8,10 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 google.golang.org/grpc v1.38.0 ) diff --git a/example/passthrough/go.mod b/example/passthrough/go.mod index 831dd00b15c..47d81232fa2 100644 --- a/example/passthrough/go.mod +++ b/example/passthrough/go.mod @@ -3,10 +3,10 @@ module go.opentelemetry.io/otel/example/passthrough go 1.15 require ( - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace ( diff --git a/example/prometheus/go.mod b/example/prometheus/go.mod index f950de8c9e1..6406bb6ab0f 100644 --- a/example/prometheus/go.mod +++ b/example/prometheus/go.mod @@ -9,11 +9,11 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/prometheus v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 - go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/prometheus v0.21.0 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 + go.opentelemetry.io/otel/sdk/metric v0.21.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/example/zipkin/go.mod b/example/zipkin/go.mod index 8c855c46a69..5d660e26881 100644 --- a/example/zipkin/go.mod +++ b/example/zipkin/go.mod @@ -9,10 +9,10 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/zipkin v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/zipkin v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/exporters/jaeger/doc.go b/exporters/jaeger/doc.go index c91f7d6a8b1..7e23966a0d7 100644 --- a/exporters/jaeger/doc.go +++ b/exporters/jaeger/doc.go @@ -14,7 +14,6 @@ // Package jaeger contains an OpenTelemetry tracing exporter for Jaeger. // -// This package is currently in a pre-GA phase. Backwards incompatible changes -// may be introduced in subsequent minor version releases as we work to track -// the evolving OpenTelemetry specification and user feedback. +// This package is currently in a Release Candidate phase. Backwards incompatible changes +// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. package jaeger // import "go.opentelemetry.io/otel/exporters/jaeger" diff --git a/exporters/jaeger/go.mod b/exporters/jaeger/go.mod index 1acc86dc572..b05b8a47bb2 100644 --- a/exporters/jaeger/go.mod +++ b/exporters/jaeger/go.mod @@ -5,9 +5,9 @@ go 1.15 require ( github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/exporters/metric/prometheus/go.mod b/exporters/metric/prometheus/go.mod index 2cb5bec4400..9775e0806fa 100644 --- a/exporters/metric/prometheus/go.mod +++ b/exporters/metric/prometheus/go.mod @@ -10,11 +10,11 @@ replace ( require ( github.com/prometheus/client_golang v1.11.0 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 - go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 + go.opentelemetry.io/otel/sdk/metric v0.21.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/otlp/otlpmetric/go.mod b/exporters/otlp/otlpmetric/go.mod index 27f15d0246e..20cf37bbded 100644 --- a/exporters/otlp/otlpmetric/go.mod +++ b/exporters/otlp/otlpmetric/go.mod @@ -5,11 +5,11 @@ go 1.15 require ( github.com/cenkalti/backoff/v4 v4.1.1 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 - go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 + go.opentelemetry.io/otel/sdk/metric v0.21.0 go.opentelemetry.io/proto/otlp v0.9.0 google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013 google.golang.org/grpc v1.38.0 diff --git a/exporters/otlp/otlpmetric/otlpmetricgrpc/go.mod b/exporters/otlp/otlpmetric/otlpmetricgrpc/go.mod index 10dd0a12d8e..b9937ba93f4 100644 --- a/exporters/otlp/otlpmetric/otlpmetricgrpc/go.mod +++ b/exporters/otlp/otlpmetric/otlpmetricgrpc/go.mod @@ -4,10 +4,10 @@ go 1.15 require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/otlp/otlpmetric v0.0.0-00010101000000-000000000000 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/otlp/otlpmetric v0.21.0 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk/metric v0.21.0 go.opentelemetry.io/proto/otlp v0.9.0 google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013 google.golang.org/grpc v1.38.0 diff --git a/exporters/otlp/otlptrace/go.mod b/exporters/otlp/otlptrace/go.mod index 0a6f59339c1..26f2ef3608e 100644 --- a/exporters/otlp/otlptrace/go.mod +++ b/exporters/otlp/otlptrace/go.mod @@ -6,10 +6,10 @@ require ( github.com/cenkalti/backoff/v4 v4.1.1 github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/oteltest v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/oteltest v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 go.opentelemetry.io/proto/otlp v0.9.0 google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013 google.golang.org/grpc v1.38.0 diff --git a/exporters/otlp/otlptrace/otlptracegrpc/go.mod b/exporters/otlp/otlptrace/otlptracegrpc/go.mod index 453a30d9ed4..ed492b735d3 100644 --- a/exporters/otlp/otlptrace/otlptracegrpc/go.mod +++ b/exporters/otlp/otlptrace/otlptracegrpc/go.mod @@ -4,9 +4,9 @@ go 1.15 require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace v0.0.0-00010101000000-000000000000 - go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 go.opentelemetry.io/proto/otlp v0.9.0 google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013 google.golang.org/grpc v1.38.0 diff --git a/exporters/otlp/otlptrace/otlptracehttp/doc.go b/exporters/otlp/otlptrace/otlptracehttp/doc.go index 9c4c90edcee..595625b87a5 100644 --- a/exporters/otlp/otlptrace/otlptracehttp/doc.go +++ b/exporters/otlp/otlptrace/otlptracehttp/doc.go @@ -16,9 +16,7 @@ Package otlptracehttp a client that sends traces to the collector using HTTP with binary protobuf payloads. -This package is currently in a pre-GA phase. Backwards incompatible -changes may be introduced in subsequent minor version releases as we -work to track the evolving OpenTelemetry specification and user -feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. */ package otlptracehttp // import "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp" diff --git a/exporters/otlp/otlptrace/otlptracehttp/go.mod b/exporters/otlp/otlptrace/otlptracehttp/go.mod index 872d39f11ed..b66b91b6287 100644 --- a/exporters/otlp/otlptrace/otlptracehttp/go.mod +++ b/exporters/otlp/otlptrace/otlptracehttp/go.mod @@ -4,8 +4,8 @@ go 1.15 require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace v0.0.0-00010101000000-000000000000 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.0.0-RC1 go.opentelemetry.io/proto/otlp v0.9.0 google.golang.org/protobuf v1.26.0 ) diff --git a/exporters/prometheus/go.mod b/exporters/prometheus/go.mod index 70b9f1b170b..5f4bae5459b 100644 --- a/exporters/prometheus/go.mod +++ b/exporters/prometheus/go.mod @@ -5,11 +5,11 @@ go 1.15 require ( github.com/prometheus/client_golang v1.11.0 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 - go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 + go.opentelemetry.io/otel/sdk/metric v0.21.0 ) replace go.opentelemetry.io/otel => ../.. diff --git a/exporters/stdout/stdoutmetric/go.mod b/exporters/stdout/stdoutmetric/go.mod index 547f746642c..d55f8974a3a 100644 --- a/exporters/stdout/stdoutmetric/go.mod +++ b/exporters/stdout/stdoutmetric/go.mod @@ -9,11 +9,11 @@ replace ( require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 - go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 + go.opentelemetry.io/otel/sdk/metric v0.21.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/stdout/stdouttrace/doc.go b/exporters/stdout/stdouttrace/doc.go index 9a0965e8d74..8880bfee923 100644 --- a/exporters/stdout/stdouttrace/doc.go +++ b/exporters/stdout/stdouttrace/doc.go @@ -15,7 +15,6 @@ // Package stdout contains an OpenTelemetry exporter for tracing // telemetry to be written to an output destination as JSON. // -// This package is currently in a pre-GA phase. Backwards incompatible changes -// may be introduced in subsequent minor version releases as we work to track -// the evolving OpenTelemetry specification and user feedback. +// This package is currently in a Release Candidate phase. Backwards incompatible changes +// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. package stdouttrace // import "go.opentelemetry.io/otel/exporters/stdout/stdouttrace" diff --git a/exporters/stdout/stdouttrace/go.mod b/exporters/stdout/stdouttrace/go.mod index b65af221c9f..158d0863607 100644 --- a/exporters/stdout/stdouttrace/go.mod +++ b/exporters/stdout/stdouttrace/go.mod @@ -9,10 +9,10 @@ replace ( require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/oteltest v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/oteltest v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/trace/jaeger/go.mod b/exporters/trace/jaeger/go.mod index 7649c234457..fbc823ede63 100644 --- a/exporters/trace/jaeger/go.mod +++ b/exporters/trace/jaeger/go.mod @@ -10,9 +10,9 @@ replace ( require ( github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/trace/zipkin/go.mod b/exporters/trace/zipkin/go.mod index 5ca66d329f2..f0a68e55013 100644 --- a/exporters/trace/zipkin/go.mod +++ b/exporters/trace/zipkin/go.mod @@ -11,9 +11,9 @@ require ( github.com/google/go-cmp v0.5.6 github.com/openzipkin/zipkin-go v0.2.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/zipkin/doc.go b/exporters/zipkin/doc.go index 94683a611ad..37fc646fa99 100644 --- a/exporters/zipkin/doc.go +++ b/exporters/zipkin/doc.go @@ -14,7 +14,6 @@ // Package zipkin contains an OpenTelemetry tracing exporter for Zipkin. // -// This package is currently in a pre-GA phase. Backwards incompatible changes -// may be introduced in subsequent minor version releases as we work to track -// the evolving OpenTelemetry specification and user feedback. +// This package is currently in a Release Candidate phase. Backwards incompatible changes +// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. package zipkin // import "go.opentelemetry.io/otel/exporters/zipkin" diff --git a/exporters/zipkin/go.mod b/exporters/zipkin/go.mod index 22260e0ad91..48d289b7766 100644 --- a/exporters/zipkin/go.mod +++ b/exporters/zipkin/go.mod @@ -6,9 +6,9 @@ require ( github.com/google/go-cmp v0.5.6 github.com/openzipkin/zipkin-go v0.2.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/go.mod b/go.mod index d2497df1489..bcf7a924e97 100644 --- a/go.mod +++ b/go.mod @@ -5,8 +5,8 @@ go 1.15 require ( github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel/oteltest v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel/oteltest v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel => ./ diff --git a/internal/metric/go.mod b/internal/metric/go.mod index c90658c2bae..fc27d30b7ff 100644 --- a/internal/metric/go.mod +++ b/internal/metric/go.mod @@ -4,8 +4,8 @@ go 1.15 require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 ) replace go.opentelemetry.io/otel => ../.. diff --git a/metric/go.mod b/metric/go.mod index 08174635760..153ac82d4a7 100644 --- a/metric/go.mod +++ b/metric/go.mod @@ -45,8 +45,8 @@ replace go.opentelemetry.io/otel/trace => ../trace require ( github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/internal/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/internal/metric v0.21.0 ) replace go.opentelemetry.io/otel/example/passthrough => ../example/passthrough diff --git a/oteltest/doc.go b/oteltest/doc.go index 8711adc468e..999cbc42f39 100644 --- a/oteltest/doc.go +++ b/oteltest/doc.go @@ -15,9 +15,8 @@ /* Package oteltest provides testing utilities for the otel package. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. API Validation diff --git a/oteltest/go.mod b/oteltest/go.mod index c0081ddee62..f5ec1a1cfc1 100644 --- a/oteltest/go.mod +++ b/oteltest/go.mod @@ -46,8 +46,8 @@ replace go.opentelemetry.io/otel/trace => ../trace require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/example/passthrough => ../example/passthrough diff --git a/propagation/doc.go b/propagation/doc.go index 89573f1baa9..7d56873a965 100644 --- a/propagation/doc.go +++ b/propagation/doc.go @@ -15,9 +15,8 @@ /* Package propagation contains OpenTelemetry context propagators. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. OpenTelemetry propagators are used to extract and inject context data from and into messages exchanged by applications. The propagator supported by this diff --git a/sdk/export/metric/go.mod b/sdk/export/metric/go.mod index a49d4fe738c..7a2ca752c7f 100644 --- a/sdk/export/metric/go.mod +++ b/sdk/export/metric/go.mod @@ -44,9 +44,9 @@ replace go.opentelemetry.io/otel/trace => ../../../trace require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 ) replace go.opentelemetry.io/otel/example/passthrough => ../../../example/passthrough diff --git a/sdk/go.mod b/sdk/go.mod index eb3980bdecf..2bf54dd5dd2 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -7,9 +7,9 @@ replace go.opentelemetry.io/otel => ../ require ( github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/oteltest v0.20.0 - go.opentelemetry.io/otel/trace v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/oteltest v1.0.0-RC1 + go.opentelemetry.io/otel/trace v1.0.0-RC1 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../bridge/opencensus diff --git a/sdk/instrumentation/library.go b/sdk/instrumentation/library.go index 5e54ee484bd..2c2c9923e52 100644 --- a/sdk/instrumentation/library.go +++ b/sdk/instrumentation/library.go @@ -16,9 +16,8 @@ Package instrumentation provides an instrumentation library structure to be passed to both the OpenTelemetry Tracer and Meter components. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. For more information see [this](https://github.com/open-telemetry/oteps/blob/main/text/0083-component.md). diff --git a/sdk/metric/go.mod b/sdk/metric/go.mod index e57aa9c23ab..1fb1cddc66f 100644 --- a/sdk/metric/go.mod +++ b/sdk/metric/go.mod @@ -45,11 +45,11 @@ replace go.opentelemetry.io/otel/trace => ../../trace require ( github.com/benbjohnson/clock v1.1.0 // do not upgrade to v1.1.x because it would require Go >= 1.15 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 - go.opentelemetry.io/otel/internal/metric v0.20.0 - go.opentelemetry.io/otel/metric v0.20.0 - go.opentelemetry.io/otel/sdk v0.20.0 - go.opentelemetry.io/otel/sdk/export/metric v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 + go.opentelemetry.io/otel/internal/metric v0.21.0 + go.opentelemetry.io/otel/metric v0.21.0 + go.opentelemetry.io/otel/sdk v1.0.0-RC1 + go.opentelemetry.io/otel/sdk/export/metric v0.21.0 ) replace go.opentelemetry.io/otel/example/passthrough => ../../example/passthrough diff --git a/sdk/resource/doc.go b/sdk/resource/doc.go index fe34f896af5..846d65bb18a 100644 --- a/sdk/resource/doc.go +++ b/sdk/resource/doc.go @@ -14,9 +14,8 @@ // Package resource provides detecting and representing resources. // -// This package is currently in a pre-GA phase. Backwards incompatible changes -// may be introduced in subsequent minor version releases as we work to track -// the evolving OpenTelemetry specification and user feedback. +// This package is currently in a Release Candidate phase. Backwards incompatible changes +// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. // // The fundamental struct is a Resource which holds identifying information // about the entities for which telemetry is exported. diff --git a/sdk/trace/doc.go b/sdk/trace/doc.go index fd6ead86457..70212916f59 100644 --- a/sdk/trace/doc.go +++ b/sdk/trace/doc.go @@ -15,9 +15,8 @@ /* Package trace contains support for OpenTelemetry distributed tracing. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. The following assumes a basic familiarity with OpenTelemetry concepts. See https://opentelemetry.io. diff --git a/semconv/v1.4.0/doc.go b/semconv/v1.4.0/doc.go index 4451ab22389..90184a9f327 100644 --- a/semconv/v1.4.0/doc.go +++ b/semconv/v1.4.0/doc.go @@ -14,9 +14,8 @@ // Package semconv implements OpenTelemetry semantic conventions. // -// This package is currently in a pre-GA phase. Backwards incompatible changes -// may be introduced in subsequent minor version releases as we work to track -// the evolving OpenTelemetry specification and user feedback. +// This package is currently in a Release Candidate phase. Backwards incompatible changes +// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. // // OpenTelemetry semantic conventions are agreed standardized naming // patterns for OpenTelemetry things. This package represents the conventions diff --git a/trace/doc.go b/trace/doc.go index c962f3bc622..5cc5050024d 100644 --- a/trace/doc.go +++ b/trace/doc.go @@ -16,9 +16,8 @@ Package trace provides an implementation of the tracing part of the OpenTelemetry API. -This package is currently in a pre-GA phase. Backwards incompatible changes -may be introduced in subsequent minor version releases as we work to track the -evolving OpenTelemetry specification and user feedback. +This package is currently in a Release Candidate phase. Backwards incompatible changes +may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize. To participate in distributed traces a Span needs to be created for the operation being performed as part of a traced workflow. It its simplest form: diff --git a/trace/go.mod b/trace/go.mod index 44a977ef2f4..49bea6d3bbf 100644 --- a/trace/go.mod +++ b/trace/go.mod @@ -45,7 +45,7 @@ replace go.opentelemetry.io/otel/trace => ./ require ( github.com/google/go-cmp v0.5.6 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel v1.0.0-RC1 ) replace go.opentelemetry.io/otel/example/passthrough => ../example/passthrough diff --git a/version.go b/version.go index 81be6f36817..69bb4673138 100644 --- a/version.go +++ b/version.go @@ -16,5 +16,5 @@ package otel // import "go.opentelemetry.io/otel" // Version is the current release version of OpenTelemetry in use. func Version() string { - return "0.20.0" + return "1.0.0-RC1" } diff --git a/versions.yaml b/versions.yaml new file mode 100644 index 00000000000..1b6152b9b8d --- /dev/null +++ b/versions.yaml @@ -0,0 +1,56 @@ +# Copyright The OpenTelemetry Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +module-sets: + stable-v1: + version: v1.0.0-RC1 + modules: + - go.opentelemetry.io/otel + - go.opentelemetry.io/otel/example/jaeger + - go.opentelemetry.io/otel/example/namedtracer + - go.opentelemetry.io/otel/example/otel-collector + - go.opentelemetry.io/otel/example/passthrough + - go.opentelemetry.io/otel/example/zipkin + - go.opentelemetry.io/otel/exporters/jaeger + - go.opentelemetry.io/otel/exporters/zipkin + - go.opentelemetry.io/otel/exporters/otlp/otlptrace + - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc + - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp + - go.opentelemetry.io/otel/exporters/stdout/stdouttrace + - go.opentelemetry.io/otel/exporters/trace/jaeger + - go.opentelemetry.io/otel/exporters/trace/zipkin + - go.opentelemetry.io/otel/oteltest + - go.opentelemetry.io/otel/trace + - go.opentelemetry.io/otel/sdk + experimental-metrics: + version: v0.21.0 + modules: + - go.opentelemetry.io/otel/example/prometheus + - go.opentelemetry.io/otel/exporters/metric/prometheus + - go.opentelemetry.io/otel/exporters/otlp/otlpmetric + - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc + - go.opentelemetry.io/otel/exporters/prometheus + - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric + - go.opentelemetry.io/otel/internal/metric + - go.opentelemetry.io/otel/metric + - go.opentelemetry.io/otel/sdk/export/metric + - go.opentelemetry.io/otel/sdk/metric + bridge: + version: v0.21.0 + modules: + - go.opentelemetry.io/otel/bridge/opencensus + - go.opentelemetry.io/otel/bridge/opentracing + - go.opentelemetry.io/otel/example/opencensus +excluded-modules: + - go.opentelemetry.io/otel/internal/tools \ No newline at end of file diff --git a/website_docs/_index.md b/website_docs/_index.md index 2000ec0105c..9201aa37c78 100644 --- a/website_docs/_index.md +++ b/website_docs/_index.md @@ -14,7 +14,7 @@ The current status of the major functional components for OpenTelemetry Go is as | Tracing | Metrics | Logging | | ------- | ------- | ------- | -| Beta | Alpha | Not Yet Implemented | +| Release Candidate | Alpha | Not Yet Implemented | The current release can be found [here](https://github.com/open-telemetry/opentelemetry-go/releases) diff --git a/website_docs/exporting_data.md b/website_docs/exporting_data.md index c01dc0c460e..bf015293f1a 100644 --- a/website_docs/exporting_data.md +++ b/website_docs/exporting_data.md @@ -33,10 +33,11 @@ Resources are a special type of attribute that apply to all spans generated by a Resources should be assigned to a tracer provider at its initialization, and are created much like attributes: ```go -resources := resource.New( - attribute.String("service.name", "myService"), - attribute.String("service.version", "1.0.0"), - attribute.String("instance.id", "abcdef12345"), +resources := resource.NewWithAttributes( + semconv.SchemaURL, + semconv.ServiceNameKey.String("myService"), + semconv.ServiceVersionKey.String("1.0.0"), + semconv.ServiceInstanceIDKey.String("abcdef12345"), ) provider := sdktrace.NewTracerProvider( @@ -45,9 +46,26 @@ provider := sdktrace.NewTracerProvider( ) ``` +Note the use of the `semconv` package to provide conventional names for resource attributes. This helps ensure that consumers of telemetry produced with these semantic conventions can +easily discover relevant attributes and understand their meaning. + +Resources can also be detected automatically through `resource.Detector` implementations. These `Detector`s may discover information about the currently running process, the operating +system it is running on, the cloud provider hosting that operating system instance, or any number of other resource attributes. + +```go +resources := resource.New(context.Background(), + // Builtin detectors provide default values and support + // OTEL_RESOURCE_ATTRIBUTES and OTEL_SERVICE_NAME environment variables + resource.WithBuiltinDetectors(), + resource.WithProcess(), // This option configures a set of Detectors that discover process information + resource.WithDetectors(thirdparty.Detector{}), // Bring your own external Detector implementation + resource.WithAttributes(attribute.String("foo", "bar")), // Or specify resource attributes directly +) +``` + # OTLP Exporter -OpenTelemetry Protocol (OTLP) is available in the `go.opentelemetry.io/otel/exporters/otlp` package. +OpenTelemetry Protocol (OTLP) export is available in the `go.opentelemetry.io/otel/exporters/otlp/otlptrace` and `go.opentelemetry.io/otel/exporters/otlp/otlpmetrics` packages. Please find more documentation on [GitHub](https://github.com/open-telemetry/opentelemetry-go/tree/main/exporters/otlp) diff --git a/website_docs/getting-started.md b/website_docs/getting-started.md index be35a87b42e..dce9a429691 100644 --- a/website_docs/getting-started.md +++ b/website_docs/getting-started.md @@ -15,7 +15,11 @@ To get started with this guide, create a new directory and add a new file named To install the necessary prerequisites for OpenTelemetry, you'll want to run the following command in the directory with your `go.mod`: -`go get go.opentelemetry.io/otel@v0.20.0 go.opentelemetry.io/otel/sdk@v0.20.0 go.opentelemetry.io/otel/exporters/stdout@v0.20.0` +`go get go.opentelemetry.io/otel@v1.0.0-RC1 go.opentelemetry.io/otel/sdk@v1.0.0-RC1 go.opentelemetry.io/otel/exporters/stdout/stdouttrace@v1.0.0-RC1` + +If you wish to include the experimental metrics support you will need to include a few additional modules: + +`go get go.opentelemetry.io/otel/metric@v0.21.0 go.opentelemetry.io/otel/sdk/metric@v0.21.0 go.opentelemetry.io/otel/exporters/stdout/stdoutmetric@v0.21.0` In your `main.go` file, you'll need to import several packages: @@ -28,17 +32,19 @@ import ( "time" "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/baggage" "go.opentelemetry.io/otel/exporters/stdout/stdouttrace" - "go.opentelemetry.io/otel/exporters/stdout/stdoutmetric" - "go.opentelemetry.io/otel/attribute" - "go.opentelemetry.io/otel/metric" + sdktrace "go.opentelemetry.io/otel/sdk/trace" "go.opentelemetry.io/otel/propagation" + "go.opentelemetry.io/otel/trace" + + // For experimental metrics support, also include: + "go.opentelemetry.io/otel/metric" + "go.opentelemetry.io/otel/exporters/stdout/stdoutmetric" controller "go.opentelemetry.io/otel/sdk/metric/controller/basic" processor "go.opentelemetry.io/otel/sdk/metric/processor/basic" "go.opentelemetry.io/otel/sdk/metric/selector/simple" - sdktrace "go.opentelemetry.io/otel/sdk/trace" - "go.opentelemetry.io/otel/trace" ) ``` @@ -48,7 +54,7 @@ These packages contain the basic requirements for OpenTelemetry Go - the API its The SDK requires an exporter to be created. Exporters are packages that allow telemetry data to be emitted somewhere - either to the console (which is what we're doing here), or to a remote system or collector for further analysis and/or enrichment. OpenTelemetry supports a variety of exporters through its ecosystem including popular open source tools like Jaeger, Zipkin, and Prometheus. -To initialize the console exporter, add the following code to the file your `main.go` file - +To initialize the console exporter, add the following code to the file your `main.go` file: ```go func main() { @@ -68,7 +74,7 @@ A trace is a type of telemetry that represents work being done by a service. In OpenTelemetry requires a trace provider to be initialized in order to generate traces. A trace provider can have multiple span processors, which are components that allow for span data to be modified or exported after it's created. -To create a trace provider, add the following code to your `main.go` file - +To create a trace provider, add the following code to your `main.go` file: ```go ctx := context.Background() @@ -87,7 +93,7 @@ A metric is a captured measurement about the execution of a computer program at OpenTelemetry requires a meter provider to be initialized in order to create instruments that will generate metrics. The way metrics are exported depends on the used system. For example, prometheus uses a pull model, while OTLP uses a push model. In this document we use an stdout exporter which uses the latter. Thus we need to create a push controller that will periodically push the collected metrics to the exporter. -To create a meter provider, add the following code to your `main.go` file - +To create a meter provider, add the following code to your `main.go` file: ```go metricExporter, err := stdoutmetric.New( @@ -121,7 +127,7 @@ Again we create an exporter, this time using the `stdoutmetric` exporter package When using OpenTelemetry, it's a good practice to set a global tracer provider and a global meter provider. Doing so will make it easier for libraries and other dependencies that use the OpenTelemetry API to easily discover the SDK, and emit telemetry data. In addition, you'll want to configure context propagation options. Context propagation allows for OpenTelemetry to share values across multiple services - this includes trace identifiers, which ensure that all spans for a single request are part of the same trace, as well as baggage, which are arbitrary key/value pairs that you can use to pass observability data between services (for example, sharing a customer ID from one service to the next). -Setting up global options uses the `otel` package - add these options to your `main.go` file as shown - +Setting up global options uses the `otel` package - add these options to your `main.go` file as shown: ```go otel.SetTracerProvider(tp) @@ -141,8 +147,6 @@ Each measurement can be associated with attributes that can later be used by vis To set up some metric instruments, add the following code to your `main.go` file - ```go - fooKey := attribute.Key("ex.com/foo") - barKey := attribute.Key("ex.com/bar") lemonsKey := attribute.Key("ex.com/lemons") anotherKey := attribute.Key("ex.com/another") @@ -171,10 +175,13 @@ Let's put the concepts we've just covered together, and create a trace and some ```go tracer := otel.Tracer("ex.com/basic") - ctx = baggage.ContextWithValues(ctx, - fooKey.String("foo1"), - barKey.String("bar1"), - ) + + // we're ignoring errors here since we know these values are valid, + // but do handle them appropriately if dealing with user-input + foo, _ := baggage.NewMember("ex.com.foo", "foo1") + bar, _ := baggage.NewMember("ex.com.bar", "bar1") + bag, _ := baggage.New(foo, bar) + ctx = baggage.ContextWithBaggage(ctx, bag) func(ctx context.Context) { var span trace.Span @@ -185,8 +192,6 @@ Let's put the concepts we've just covered together, and create a trace and some span.SetAttributes(anotherKey.String("yes")) meter.RecordBatch( - // Note: call-site variables added as context Entries: - baggage.ContextWithValues(ctx, anotherKey.String("xyz")), commonAttributes, valueRecorder.Measurement(2.0), diff --git a/website_docs/instrumentation.md b/website_docs/instrumentation.md index 84919e41fe7..c9c3aaf10df 100644 --- a/website_docs/instrumentation.md +++ b/website_docs/instrumentation.md @@ -11,7 +11,7 @@ Spans are created by tracers, which can be acquired from a Tracer Provider. ```go ctx := context.Background() -tracer := provider.Tracer("example/main") +tracer := otel.Tracer("example/main") var span trace.Span ctx, span = tracer.Start(ctx, "helloWorld") defer span.End() @@ -93,7 +93,7 @@ The metrics API is currently unstable, documentation TBA. Traces can extend beyond a single process. This requires _context propagation_, a mechanism where identifiers for a trace are sent to remote processes. -In order to propagate trace context over the wire, a propagator must be registered with the OpenTelemetry SDK. +In order to propagate trace context over the wire, a propagator must be registered with the OpenTelemetry API. ```go import (