Skip to content

[otlp-transformer] stabilization plan #4582

Open
@pichlermarc

Description

@pichlermarc

Description

The @opentelemetry/otlp-transformer package contains utilities to serialize signals data to and from OTLP (binary protobuf) or OTLP (json). As all OTLP exporters depend on this package, stabilization of @opentelemetry/otlp-transformer is required for exporter stability.

The package may be moved to stable once the below issues are resolved.

Currently the following issues prevent stabilization:

Large API surface:

The API surface currently consists of 40+ types and functions. By moving the complete serialization process to @opentelemetry/otlp-transformer we will be able to reduce the API surface to an interface ISerializer, one serializer implementation per signal (metrics, logs, traces) and type (binary protobuf, json), as well as one response type per signal.

Reducing the API surface is required to enable optimizations in the serialization process in terms memory use, performance, and bundle size without being constrained by a large stable public API.

This will be addressed by:

Non-stable dependencies:

@opentelemetry/otlp-transformer depends on @opentelemetry/sdk-logs and @opentelemetry/api-logs which may not be stable by the time we want to stabilize the @opentelemetry/otlp-transformer package. In this case, after reducing the API surface, we should mark all types and functions that use experimental types as @experimental

It further depends on an old version of opentelemetry-proto which we should update to a stable version before marking the package as stable.

This will be addressed by

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions