otlp_grpc
Send OpenTelemetry traces, logs, and metrics via OTLP/gRPC protocol.
Sends OpenTelemetry telemetry data to a remote collector via OTLP/gRPC protocol.
Accepts batches of Redpanda OTEL v1 protobuf messages (spans, log records, or metrics) and converts them to OTLP format for transmission to OpenTelemetry collectors.
-
Common
-
Advanced
outputs:
label: ""
otlp_grpc:
endpoint: "" # No default (required)
max_in_flight: 64
outputs:
label: ""
otlp_grpc:
endpoint: "" # No default (required)
headers: {}
timeout: 30s
compression: gzip
tls:
enabled: false
skip_cert_verify: false
cert_file: ""
key_file: ""
tcp:
connect_timeout: 0s
keep_alive:
idle: 15s
interval: 15s
count: 9
tcp_user_timeout: 0s
oauth2:
enabled: false
client_key: ""
client_secret: ""
token_url: ""
scopes: []
endpoint_params: {}
max_in_flight: 64
Input format
Expects messages in Redpanda OTEL v1 protobuf format with metadata:
-
signal_type: "trace", "log", or "metric"
Each batch must contain messages of the same signal type. The entire batch is converted to a single OTLP export request and sent via gRPC.
Authentication
Supports multiple authentication methods:
-
Bearer token authentication (via
auth_tokenfield) -
OAuth v2 (via
oauth2configuration block)
| OAuth2 requires TLS to be enabled. |
Fields
compression
Compression type for gRPC requests. Options: 'gzip' or 'none'.
Type: string
Default: gzip
Options: gzip, none
headers
A map of headers to add to the gRPC request metadata.
This field supports interpolation functions.
Type: string
Default: {}
# Examples:
headers:
X-Custom-Header: value
traceparent: ${! tracing_span().traceparent }
max_in_flight
The maximum number of messages to have in flight at a given time. Increase this to improve throughput.
Type: int
Default: 64
oauth2
Allows you to specify open authentication via OAuth version 2 using the client credentials token flow.
Type: object
oauth2.client_key
A value used to identify the client to the token provider.
Type: string
Default: ""
oauth2.client_secret
A secret used to establish ownership of the client key.
|
This field contains sensitive information that usually shouldn’t be added to a configuration directly. For more information, see Manage Secrets before adding it to your configuration. |
Type: string
Default: ""
oauth2.endpoint_params
A list of optional endpoint parameters, values should be arrays of strings.
Type: object
Default: {}
# Examples:
endpoint_params:
audience:
- https://example.com
resource:
- https://api.example.com
tcp.connect_timeout
Maximum amount of time a dial will wait for a connect to complete. Zero disables.
Type: string
Default: 0s
tcp.keep_alive.count
Maximum unanswered keep-alive probes before dropping the connection. Zero defaults to 9.
Type: int
Default: 9
tcp.keep_alive.idle
Duration the connection must be idle before sending the first keep-alive probe. Zero defaults to 15s. Negative values disable keep-alive probes.
Type: string
Default: 15s
tcp.keep_alive.interval
Duration between keep-alive probes. Zero defaults to 15s.
Type: string
Default: 15s