Skip to content
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

Remove jaeger exporter #3567

Merged
merged 7 commits into from
Jun 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@ release.
- Extract Examplar section and mark it as Experimental.
([#3533](https://github.com/open-telemetry/opentelemetry-specification/pull/3533))

- BREAKING: Remove the Jaeger Exporter
([#3567](https://github.com/open-telemetry/opentelemetry-specification/pull/3567))

### Telemetry Schemas

### Common
Expand Down
17 changes: 1 addition & 16 deletions spec-compliance-matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ status of the feature is not known.

For the `Optional` column, `X` means the feature is optional, blank means the
feature is required, and columns marked with `*` mean that for each type of
exporter (OTLP, Zipkin, and Jaeger), implementing at least one of the supported
exporter (OTLP and Zipkin), implementing at least one of the supported
formats is required. Implementing more than one format is optional.

## Traces
Expand Down Expand Up @@ -280,7 +280,6 @@ Note: Support for environment variables is optional.
| OTEL_BSP_* | + | + | + | + | + | + | + | + | - | - | - |
| OTEL_BLRP_* | | + | | | | | | | | | |
| OTEL_EXPORTER_OTLP_* | + | + | | + | + | + | + | + | + | + | - |
| OTEL_EXPORTER_JAEGER_* | + | + | | + | + | - | - | | - | + | - |
| OTEL_EXPORTER_ZIPKIN_* | - | + | | + | + | - | + | - | - | + | - |
| OTEL_TRACES_EXPORTER | - | + | + | + | + | + | + | - | - | - | |
| OTEL_METRICS_EXPORTER | - | + | | + | - | - | + | - | - | - | - |
Expand Down Expand Up @@ -340,17 +339,6 @@ Note: Support for environment variables is optional.
| Error Status mapping | | + | + | | + | + | - | + | + | + | + | - |
| Event attributes mapping to Annotations | | + | + | + | + | + | + | + | + | + | + | + |
| Integer microseconds in timestamps | | N/A| + | | + | + | - | + | + | + | + | + |
| **[Jaeger](specification/trace/sdk_exporters/jaeger.md)** | Optional | Go | Java | JS | Python | Ruby | Erlang | PHP | Rust | C++ | .NET | Swift |
| [Jaeger Thrift over UDP][jaegerThriftUDP] | X | + | | | + | + | - | - | + | + | + | + |
| [Jaeger Protobuf via gRPC][jaegerProtobuf] | X | - | + | | + | - | - | - | | - | - | - |
| [Jaeger Thrift over HTTP][jaegerThriftHTTP] | X | + | - | | + | + | - | - | + | + | + | - |
| Service name mapping | | + | + | | + | + | - | - | | + | + | + |
| Resource to Process mapping | | + | + | | + | + | - | - | + | - | + | - |
| InstrumentationLibrary mapping | | + | + | | + | + | - | - | + | - | + | - |
| InstrumentationScope mapping | | | + | | + | | | | | | | |
| Status mapping | | + | + | | + | + | - | - | + | + | + | + |
| Error Status mapping | | + | + | | + | + | - | - | + | + | + | - |
| Events converted to Logs | | + | + | | + | + | - | - | + | - | + | + |
| **OpenCensus** | | | | | | | | | | | | |
| TBD | | | | | | | | | | | | |
| **Prometheus** | | | | | | | | | | | | |
Expand All @@ -377,6 +365,3 @@ Languages not covered by the OpenTracing project do not need to be listed here,
[py1174]: https://github.com/open-telemetry/opentelemetry-python/issues/1174
[py1779]: https://github.com/open-telemetry/opentelemetry-python/issues/1779
[php225]: https://github.com/open-telemetry/opentelemetry-php/issues/225
[jaegerThriftUDP]: https://www.jaegertracing.io/docs/latest/apis/#thrift-over-udp-stable
[jaegerProtobuf]: https://www.jaegertracing.io/docs/latest/apis/#protobuf-via-grpc-stable
[jaegerThriftHTTP]: https://www.jaegertracing.io/docs/latest/apis/#thrift-over-http-stable
65 changes: 0 additions & 65 deletions specification/configuration/sdk-environment-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,70 +178,6 @@ See the SDK [LogRecord Limits](../logs/sdk.md#logrecord-limits) section for the

See [OpenTelemetry Protocol Exporter Configuration Options](../protocol/exporter.md).

## Jaeger Exporter

**Status**: [Deprecated](../document-status.md)

Jaeger exporter support will be removed from OpenTelemetry in July 2023.

_Note: Jaeger supports the [OpenTelemetry protocol natively][jaeger_otlp] and most users
should export to Jaeger using OTLP. These environment variables remain here
only for backwards compatibility and will be removed in a future version. SDKs MAY include
Jaeger exporters, but Jaeger export is not required._

The `OTEL_EXPORTER_JAEGER_PROTOCOL` environment variable
MAY by used to specify the transport protocol.
The value MUST be one of:

- `http/thrift.binary` - [Thrift over HTTP][jaeger_http]
- `grpc` - [gRPC][jaeger_grpc]
- `udp/thrift.compact` - [Thrift with compact encoding over UDP][jaeger_udp]
- `udp/thrift.binary` - [Thrift with binary encoding over UDP][jaeger_udp]

[jaeger_http]: https://www.jaegertracing.io/docs/latest/apis/#thrift-over-http-stable
[jaeger_grpc]: https://www.jaegertracing.io/docs/latest/apis/#protobuf-via-grpc-stable
[jaeger_udp]: https://www.jaegertracing.io/docs/latest/apis/#thrift-over-udp-stable
[jaeger_otlp]: https://www.jaegertracing.io/docs/latest/apis/#opentelemetry-protocol-stable

The default transport protocol SHOULD be `http/thrift.binary` unless
SDKs have good reasons to choose other as the default
(e.g. for backward compatibility reasons).

Environment variables specific for the `http/thrift.binary` transport protocol:

| Name | Description | Default |
|-------------------------------|------------------------------------------------------------------------------------|-------------------------------------|
| OTEL_EXPORTER_JAEGER_ENDPOINT | Full URL of the [Jaeger HTTP endpoint][jaeger_collector] | `http://localhost:14268/api/traces` |
| OTEL_EXPORTER_JAEGER_TIMEOUT | Maximum time (in milliseconds) the Jaeger exporter will wait for each batch export | 10000 |
| OTEL_EXPORTER_JAEGER_USER | Username to be used for HTTP basic authentication | |
| OTEL_EXPORTER_JAEGER_PASSWORD | Password to be used for HTTP basic authentication | |

Environment variables specific for the `grpc` transport protocol:

| Name | Description | Default |
|-------------------------------|------------------------------------------------------------------------------------|--------------------------|
| OTEL_EXPORTER_JAEGER_ENDPOINT | URL of the [Jaeger gRPC endpoint][jaeger_collector] | `http://localhost:14250` |
| OTEL_EXPORTER_JAEGER_TIMEOUT | Maximum time (in milliseconds) the Jaeger exporter will wait for each batch export | 10000 |
| OTEL_EXPORTER_JAEGER_USER | Username to be used for HTTP basic authentication | |
| OTEL_EXPORTER_JAEGER_PASSWORD | Password to be used for HTTP basic authentication | |

Environment variables specific for the `udp/thrift.compact` transport protocol:

| Name | Description | Default |
|---------------------------------|---------------------------------------------------------------|-------------|
| OTEL_EXPORTER_JAEGER_AGENT_HOST | Hostname of the [Jaeger agent][jaeger_agent] | `localhost` |
| OTEL_EXPORTER_JAEGER_AGENT_PORT | `udp/thrift.compact` port of the [Jaeger agent][jaeger_agent] | `6831` |

Environment variables specific for the `udp/thrift.binary` transport protocol:

| Name | Description | Default |
|---------------------------------|--------------------------------------------------------------|-------------|
| OTEL_EXPORTER_JAEGER_AGENT_HOST | Hostname of the [Jaeger agent][jaeger_agent] | `localhost` |
| OTEL_EXPORTER_JAEGER_AGENT_PORT | `udp/thrift.binary` port of the [Jaeger agent][jaeger_agent] | `6832` |

[jaeger_collector]: https://www.jaegertracing.io/docs/latest/deployment/#collector
[jaeger_agent]: https://www.jaegertracing.io/docs/latest/deployment/#agent

## Zipkin Exporter

**Status**: [Stable](../document-status.md)
Expand Down Expand Up @@ -286,7 +222,6 @@ The SDK MAY accept a comma-separated list to enable setting multiple exporters.
Known values for `OTEL_TRACES_EXPORTER` are:

- `"otlp"`: [OTLP](../protocol/otlp.md)
- `"jaeger"`: export in Jaeger data model
- `"zipkin"`: [Zipkin](https://zipkin.io/zipkin-api/) (Defaults to [protobuf](https://github.com/openzipkin/zipkin-api/blob/master/zipkin.proto) format)
- `"none"`: No automatically configured exporter for traces.

Expand Down
5 changes: 2 additions & 3 deletions specification/library-guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ _Note to OpenTelemetry client Authors:_ OpenTelemetry specification, API and SDK
- metrics
- Prometheus.
- trace
- Jaeger.
- Zipkin.

Note: some of these support multiple protocols (e.g. gRPC, Thrift, etc). The exact list of protocols to implement in the exporters is TBD.
Expand Down Expand Up @@ -93,8 +92,8 @@ name of the library should be prefixed with the terms "OpenTelemetry" and "Expor

For example:

- Python and Java: opentelemetry-exporter-jaeger
- Javascript: @opentelemetry/exporter-jeager
- Python and Java: opentelemetry-exporter-{vendor_name}
- Javascript: @opentelemetry/exporter-{vendor_name}

#### Resource Detection

Expand Down
12 changes: 6 additions & 6 deletions specification/trace/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -482,12 +482,12 @@ The following diagram shows `SpanProcessor`'s relationship to other components
in the SDK:

```
+-----+--------------+ +-------------------------+ +-------------------+
| | | | | | |
| | | | Batching Span Processor | | SpanExporter |
| | +---> Simple Span Processor +---> (JaegerExporter) |
| | | | | | |
| SDK | Span.start() | +-------------------------+ +-------------------+
+-----+--------------+ +-------------------------+ +----------------+
| | | | | | |
| | | | Batching Span Processor | | SpanExporter |
| | +---> Simple Span Processor +---> (OTLPExporter) |
| | | | | | |
| SDK | Span.start() | +-------------------------+ +----------------+
| | Span.end() |
| | |
| | |
Expand Down