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

Obsolete processor options on OtlpExporterOptions when we release support for logs #4527

Open
alanwest opened this issue May 30, 2023 · 2 comments
Labels
enhancement New feature or request pkg:OpenTelemetry.Exporter.OpenTelemetryProtocol Issues related to OpenTelemetry.Exporter.OpenTelemetryProtocol NuGet package traces Tracing signal related
Milestone

Comments

@alanwest
Copy link
Member

This issue is to track our decision for obsoleting the following options on the OtlpExporterOptions class

/// <summary>
/// Gets or sets the export processor type to be used with the OpenTelemetry Protocol Exporter. The default value is <see cref="ExportProcessorType.Batch"/>.
/// </summary>
public ExportProcessorType ExportProcessorType { get; set; } = ExportProcessorType.Batch;
/// <summary>
/// Gets or sets the BatchExportProcessor options. Ignored unless ExportProcessorType is Batch.
/// </summary>
public BatchExportProcessorOptions<Activity> BatchExportProcessorOptions { get; set; }

Background

For both traces and metrics it is possible to configure the interval for which telemetry is exported.

The SDK component that controls the export interval differ between traces and metrics. For traces an ExportProcessor defines the interval for which it invokes its exporter, and for metrics a MetricReader defines the interval.

We explicitly decided not to add MetricReader related options to the OtlpExporterOptions class to avoid further polluting it with non-exporter related options. However, the ExportProcessor options have caused confusion as they only apply to traces and not metrics (see #2767 and #4026).

Additionally, support for logs will be introduced soon. While logs share the notion of an ExportProcessor, OtlpExporterOptions.BatchExportProcessorOptions is typed specifically for traces BatchExportProcessorOptions<Activity>. We plan to continue our work related to #2552, so we will not be adding log specific processor settings to OtlpExporterOptions.

I believe, just as we saw with metrics, end users will be confused that the processor related settings on OtlpExporterOptions do not control the behavior for logs. Therefore, I think we should mark the processor settings obsolete to communicate this clearly.

@CodeBlanch
Copy link
Member

Tagging #5423 which is related to this effort.

@TimothyMothra
Copy link
Contributor

Had a brief chat with Blanch about this. My understanding is that a fix is in place for Logs and Metrics with only Traces outstanding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pkg:OpenTelemetry.Exporter.OpenTelemetryProtocol Issues related to OpenTelemetry.Exporter.OpenTelemetryProtocol NuGet package traces Tracing signal related
Projects
None yet
Development

No branches or pull requests

6 participants