opentelemetry

Elastic Distribution of OpenTelemetry Collector components

The OpenTelemetry Collector uses the following components to receive, process, and export telemetry data:

The default configurations of the Elastic Distribution of the OpenTelemetry (EDOT) Collector follows these flows:

MacOS and Linux host metrics

Flow for MacOS and Linux Host metrics

MacOS and Linux logs

Flow for MacOS and Linux logs

Kubernetes metrics

Flow for Kubernetes metrics

Kubernetes, MacOS, and Linux logs

Flow for Kubernetes, MacOS, and Linux logs

Refer to the following tables for more information on the components included in the EDOT Collector. Follow the links for OpenTelemetry documentation with more configuration details for each component. To set up the EDOT Collector, get started using the guided onboarding docs or the manual configuration docs.

Receivers

Component Description
filelogreceiver Collects logs from files on the local filesystem, supporting various formats and log rotation strategies.
hostmetricsreceiver Collects metrics from the host machine, such as CPU, memory, disk, and network usage.
httpcheckreceiver Performs HTTP checks to monitor the availability and response time of web services.
k8sclusterreceiver Gathers metrics and metadata from a Kubernetes cluster.
k8sobjectsreceiver Monitors changes to Kubernetes objects, and collects related metrics.
kubeletstatsreceiver Collects metrics from the Kubelet, including node and pod-level resource usage.
otlpreceiver Receives metrics, traces, and logs in OpenTelemetry Protocol (OTLP) format.

Processors

Component Description
elasticinframetricsprocessor Processes infrastructure metrics to enhance and convert them for Elasticsearch.
attributesprocessor Modifies telemetry data attributes.
filterprocessor Filters telemetry data to include or exclude specific data points.
k8sattributesprocessor Enhances telemetry data with Kubernetes-specific metadata.
resourcedetectionprocessor Detects resource attributes and adds them to telemetry data.
resourceprocessor Allows resource attributes to be modified in telemetry data.
transformprocessor Transforms telemetry data modifying based on specified rules.
batchprocessor Batches telemetry data to improve export performance and manage load on back-end systems.

Exporters

Component Description
elasticsearchexporter Sends collected telemetry data to Elasticsearch for storage and analysis.
fileexporter Writes telemetry data to a file, useful for debugging or offline analysis.
debugexporter Outputs telemetry data in a human-readable format for debugging purposes.
otlpexporter Sends telemetry data in OTLP format to a specified endpoint.
otlphttpexporter Sends telemetry data using HTTP with OTLP.

Extensions

Component Description
filestorage Provides file-based storage for temporary data, such as checkpoints and intermediate state.
memorylimiterextension Limits the memory usage of the collector to prevent out-of-memory errors.