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

Split OTEL_EXPORTER to OTEL_TRACE_EXPORTER and OTEL_METRICS_EXPORTER #1318

Merged
merged 8 commits into from
Jan 13, 2021
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
Empty file added exporters
Empty file.
2 changes: 1 addition & 1 deletion spec-compliance-matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ status of the feature is not known.
|OTEL_EXPORTER_OTLP_* | | + | | + | + | - | - | | - | - | - |
|OTEL_EXPORTER_JAEGER_* | | + | | + | + | - | - | + | - | - | - |
|OTEL_EXPORTER_ZIPKIN_* | | + | | + | | - | - | | - | - | - |
|OTEL_EXPORTER | | - | | + | | | | | | - | - |
|OTEL_EXPORTERS | | - | | - | | | | | | - | - |
|OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT | | + | | + | + | | | | | - | - |
|OTEL_SPAN_EVENT_COUNT_LIMIT | | + | | + | + | | | | | - | - |
|OTEL_SPAN_LINK_COUNT_LIMIT | | + | | + | + | | | | | - | - |
Expand Down
4 changes: 2 additions & 2 deletions specification/sdk-environment-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,9 @@ See [OpenTelemetry Protocol Exporter Configuration Options](./protocol/exporter.

| Name | Description | Default |
| ------------- | ---------------------------------------------------------------------------- | ------- |
| OTEL_EXPORTER | Exporter to be used, can be a comma-separated list to use multiple exporters | "otlp" |
| OTEL_EXPORTERS | Exporters to be used as a comma separated list | "otlp" |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems a bit annoying that we support exporting to two different exporters at the same time, but not two differently configured exporters of the same kind (e.g. zipkin + jaeger works, but not two different jaeger URLs). But this is a edge case anyway, because contrary to propators, you should usually only have a single exporter. Maybe that was the reason for the name?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems to already be common to specify two exporters, one for trace and one for metrics (e.g., otlp_span and prometheus). Should we have two variables for each and drop the ability to set a list for either of them to simplify things? We also get the win of not having the otlp_span and otlp_metrics variables.

I agree it's extremely rare to want to set two exporters for the same signal, and it would still be possible programmatically if really needed.

Copy link
Member

@Oberon00 Oberon00 Jan 5, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the idea of having two variables OTEL_SPAN/TRACE_EXPORTER and OTEL_METRIC_EXPORTER 👍
I think this could also make implementation simpler. For example right now, probably you might have one place that searches the metric exporter and another place that searches the span exporter, and if there is an unknown exporter you might not even be able to warn the user because it might just be an exporter for another signal.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Anyone else that likes signal-specific exporters, please thumbs up and after a couple more votes I'll rework the PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Went ahead and split them up. Wondering if it means others should be e.g., OTEL_TRACE_EXPORTER_JAEGER_AGENT_HOST


Known values for OTEL_EXPORTER are: "otlp", "jaeger", "zipkin", "prometheus", "otlp_span", "otlp_metric".
Known values for OTEL_EXPORTERS are: "otlp", "jaeger", "zipkin", "prometheus", "otlp_span", "otlp_metric".

Note: "otlp" is equivalent to "otlp_span,otlp_metric".

Expand Down