Stef Exporter
contrib
Maintainers: @tigrannajaryan, @dmitryax
Source: opentelemetry-collector-contrib
Supported Telemetry
Overview
Overview
Exports data via gRPC using Otel/STEF format. Otel/STEF is a compact and fast telemetry format. It is currently the fastest benchmarked metric format in the Collector. Here are recent benchmarking results, comparing CPU usage when using a few different formats (lower is better):| Test | CPU Avg% | CPU Max% |
|---|---|---|
| Metric10kDPS/Carbon | 174.9 | 179.3 |
| Metric10kDPS/OpenCensus | 59.2 | 61.3 |
| Metric10kDPS/OTLP | 44.8 | 45.7 |
| Metric10kDPS/OTLP-HTTP | 33.5 | 34.0 |
| Metric10kDPS/SignalFx | 78.9 | 88.0 |
| Metric10kDPS/STEF | 20.7 | 21.7 |
And here is a dataset from
Astronomy Shop demo:
(This exporter implementation uses unsorted STEF format, labeled “STEF Unsorted” in
charts above).
There are currently no known formats that match STEF’s compactness and performance.
STEF exporter can be used to send metrics from the Collector to any STEF-compatible
backend. STEF can also be used to send metric data between Collector instances, in which
case on the receiving side a STEF receiver
should be used.
STEF format, STEF exporter and receiver implementations are currently in alpha
stage of development, during which the format may undergo breaking changes.
To ensure interoperability between sending and receiving Collectors make sure
you are using versions of exporter and receiver that are compiled with the same
version of STEF library.
Feedback about STEF format and implementation is welcome in the form of issues
in this repository or in STEF repository.
Configuration
The following settings are required:endpoint(no default): host:port to which the exporter is going to send STEF metric data, using the STEF/gRPC protocol. The valid syntax is described here. When sending to another Collector you will typically use<hostname>:4320as the endpoint, since port 4320 is the default port used by STEF receiver. If a scheme ofhttpsis used then client transport security is enabled and overrides theinsecuresetting.tls: see TLS Configuration Settings for the full set of available options.
Advanced Settings
STEF exporter supports the following advanced settings:- gRPC settings
- TLS and mTLS settings
- Queuing, timeout and retry settings, particularly:
- The
timeoutsetting controls how long the exporter waits for ACK of a data sent over STEF/gRPC stream. Increase this value if you see timeouts in the logs. - The
num_consumerssetting defines how many unacknowledged batches can be in-flight. If the destination is slow to acknowledge then increasing this number can help increase the throughput. - For the rest of settings see here.
- The
Last generated: 2026-04-13