The OpenTelemetry project facilitates the collection of telemetry data via the OpenTelemetry Collector. The OpenTelemetry Collector offers a vendor-agnostic implementation on how to receive, process, and export telemetry data. It removes the need to run, operate, and maintain multiple agents/collectors in order to support open-source observability data formats (e.g. Jaeger, Prometheus, etc.) sending to one or more open-source or commercial back-ends. In addition, the Collector gives end-users control of their data. The Collector is the default location for instrumentation libraries to send their telemetry data.
The OpenTelemetry Collector provides a single binary and two deployment methods:
For information on how to use the Collector see the getting started documentation.
The Collector is made up of the following components:
receivers
: How to get data into the Collector; these can be push or pull basedprocessors
: What to do with received dataexporters
: Where to send received data; these can be push or pull basedThese components are enabled through pipelines
. Multiple instances of
components as well as pipelines can be defined via YAML configuration.
For more information about these components see the configuration documentation.