Skip to content

[Spec Compliance] OTLP Exporter Configuration Options #1778

@utpilla

Description

@utpilla

Opening this to discuss the OTLP Exporter compliance issue

The spec for OTLP Exporter mentions these configuration options to be present: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md

OTLP Exporter options currently support these options:

  • Endpoint
  • GrpcChannelOptions (for netstandard2.1)/ Credentials and ChannelOptions (for != netstandard2.1)
  • Headers

Issue1:

The configuration options that we have currently are gRPC specific.
For eg. the spec says that the options Headers could be used for both gRPC and HTTP. We have set the data type for Headers as Metadata which is from the Grpc client. If we add support for Http later we cannot use this option.

Issue2:

The user cannot provide the certificate file as an option
Currently, the user is expected to provide either the Credentials along with ChannelOptions for non-netstandard2.1, or the GrpcChannelOptions object with the HttpClientHandler which includes the user provided certificate. The spec says to add Certificate File as a configuration option. This would require require generating Credentials from the user provided Certificate for non-netstandard2.1 and creating the appropriate HttpClientHandler for netstandard2.1

Possible solutions to Issue 1

  • Prefix the names of the options with the protocol name. For eg. Headers to be renamed to gRPCHeaders
  • Have a different OTLP Exporter dedicated to each of the protocols

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions