diff --git a/extension/encoding/README.md b/extension/encoding/README.md index a252b19f681b..e588856b780e 100644 --- a/extension/encoding/README.md +++ b/extension/encoding/README.md @@ -1,18 +1,8 @@ -# Encoding extension +# Encoding extensions - -| Status | | -| ------------- |-----------| -| Stability | [development] | -| Distributions | [] | -| Issues | [![Open issues](https://img.shields.io/github/issues-search/open-telemetry/opentelemetry-collector-contrib?query=is%3Aissue%20is%3Aopen%20label%3Aextension%2Fencoding%20&label=open&color=orange&logo=opentelemetry)](https://github.com/open-telemetry/opentelemetry-collector-contrib/issues?q=is%3Aopen+is%3Aissue+label%3Aextension%2Fencoding) [![Closed issues](https://img.shields.io/github/issues-search/open-telemetry/opentelemetry-collector-contrib?query=is%3Aissue%20is%3Aclosed%20label%3Aextension%2Fencoding%20&label=closed&color=blue&logo=opentelemetry)](https://github.com/open-telemetry/opentelemetry-collector-contrib/issues?q=is%3Aclosed+is%3Aissue+label%3Aextension%2Fencoding) | -| [Code Owners](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/CONTRIBUTING.md#becoming-a-code-owner) | [@MovieStoreGuy](https://www.github.com/MovieStoreGuy) | - -[development]: https://github.com/open-telemetry/opentelemetry-collector#development - - -The encoding extension allows for other components to reference ingress/egress data formats -to allow for simplified operability. +The encoding extensions can be used by compatible receivers or exporters to encode or decode data into/from a specific +format. This is useful when the data is being sent to/from a system that expects a specific format and doesn't support +the OpenTelemetry protocol. _🚧 Under active development 🚧_ @@ -23,52 +13,29 @@ worked towards. ### Development -- CodecFactory: Allows other components to reference code by name and version -- Codec: Defining the expected interface for a codec - - Length Delimited Codec: Used fixed length payloads to represent a collection of data that can be merged together -- Add existing formats to the codec's libraries. -- Add support to the following components +- Add endcoding extensions support additionally to the existing ways of configuring encodings (where applicable) + to the following components: - `file receiver` - `file exporter` - `kafka receiver` - `kafka exporter` - `kinesis exporter` -- Add codecs for open source formats, ie: `otlp`, `zipkin`, `jaeger` - -Component support will be behind a feature gate to avoid change in behavior - -### Alpha - -- Adopt vendor formats as codecs -- Transition feature gate to default to using encoding extension -- Add dynamic mapping support for `avro`, `parquet`, and `gotemplate` - - Not fixed on these but I am aware that users are interested in these - -### Beta - -- Add support for remote schema management - - Using `AWS Glue`, `kafka schema registry` -- Performance break down of difference codecs (static, dynamic, remote) - - This is more to help provide information to users to expected performance impact. - -### Stable - -- All features complete -- Absent of bugs that impact core behaviours -- Dependencies can also be marked as stable + - `pulsar receiver` + - `pulsar exporter` +- Add encoding extensions for open source formats, ie: `otlp`, `zipkin`, `jaeger` +- Deprecate the previously available ways of configuring encodings (where applicable). +- Remove the previously available ways of configuring encodings in favour of using the encoding extension. ## Example configuration ```yaml extensions: - encoding: + zipkin_encoding: + format: proto + version: v1 receivers: kafka: - encoding: - name: zipkin/v1 - format: proto + encoding: zipkin_encoding # ... other configuration values ``` - -[translators]: https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/pkg/translator \ No newline at end of file