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

Stable release plan for OtlpLogExporter #4454

Closed
vishweshbankwar opened this issue Apr 28, 2023 · 2 comments
Closed

Stable release plan for OtlpLogExporter #4454

vishweshbankwar opened this issue Apr 28, 2023 · 2 comments
Labels
enhancement New feature or request
Milestone

Comments

@vishweshbankwar
Copy link
Member

vishweshbankwar commented Apr 28, 2023

Proposal

  1. Resolve 4388 by adding a new extension method:

    public static LoggerProviderBuilder AddOtlpExporter(
    this LoggerProviderBuilder loggerProviderBuilder,
    Action<OtlpExporterOptions, LogRecordExportProcessorOptions> configureExporterOptions);

    In addition to this we will have following extension methods as well for users who would like to use the default settings.

    public static LoggerProviderBuilder AddOtlpExporter(this LoggerProviderBuilder builder);
    
    public static LoggerProviderBuilder AddOtlpExporter(this LoggerProviderBuilder builder, Action<OtlpExporterOptions> configureExporter);

    New class

    public class LogRecordExportProcessorOptions
    {
       public ExportProcessorType ExportProcessorType { get; set; }
       public BatchExportLogRecordProcessorOptions BatchExportProcessorOptions { get; set; }
    }
  2. In favor of moving towards a consistent experience between logs and traces we will add the following extension method for traces:

     public static TracerProviderBuilder AddOtlpExporter(
     	this TracerProviderBuilder builder, 
     	Action<OtlpExporterOptions, ActivityExportProcessorOptions> configureExporterOptions)

    New class

    public class ActivityExportProcessorOptions
    {
       public ExportProcessorType ExportProcessorType { get; set; }
       public BatchExportActivityProcessorOptions BatchExportProcessorOptions { get; set; }
    }
  3. Merge OpenTelemetry.Exporter.OpenTelemetryProtocol.Logs package in to OpenTelemetry.Exporter.OpenTelemetryProtocol.

  4. Finalize dotnet.ilogger.category, logRecord.EventId.Id and logRecord.EventId.Name attribute names.

Post stable release
By following the plan above we would be able to release stable OtlpLogExporter. However, we will still have a feature gap of supporting signal specific environment variables i.e. OTEL_EXPORTER_OTLP_SIGNAL_*. Supporting this may require adding signal specific option classes. We will explore the design for this at later time.

@vishweshbankwar vishweshbankwar added the enhancement New feature or request label Apr 28, 2023
@vishweshbankwar
Copy link
Member Author

reference PR #4416

@vishweshbankwar
Copy link
Member Author

Closing this one. An alternate approach was followed in #4733

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants