Docs Connect Components Catalog Inputs otlp_grpc otlp_grpc Page options Copy as Markdown Copied! View as plain text Ask AI about this topic Add MCP server to VS Code Type: Input ▼ InputOutput Available in: Self-Managed Receive OpenTelemetry traces, logs, and metrics via OTLP/gRPC protocol. Introduced in version 4.78.0. Exposes an OpenTelemetry Collector gRPC receiver that accepts traces, logs, and metrics via gRPC. Telemetry data is received in OTLP protobuf format and converted to individual Redpanda OTEL v1 protobuf messages. Each signal (span, log record, or metric) becomes a separate message with embedded Resource and Scope metadata, optimized for Kafka partitioning. Common Advanced inputs: label: "" otlp_grpc: address: 0.0.0.0:4317 rate_limit: "" inputs: label: "" otlp_grpc: address: 0.0.0.0:4317 tls: enabled: false cert_file: "" key_file: "" auth_token: "" max_recv_msg_size: 4194304 rate_limit: "" tcp: reuse_addr: false reuse_port: false Protocols This input supports OTLP/gRPC on the default port 4317 using the standard OTLP protobuf format for all signal types (traces, logs, metrics). Output format Each OTLP export request is unbatched into individual messages: Traces: One message per span Logs: One message per log record Metrics: One message per metric Messages are encoded in Redpanda OTEL v1 protobuf format. Metadata This input adds the following metadata fields to each message: signal_type - The signal type: "trace", "log", or "metric" You can access these metadata fields using function interpolation. Authentication When auth_token is configured, clients must include the token in the gRPC metadata. Go client example import ( "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc" ) exporter, err := otlptracegrpc.New(ctx, otlptracegrpc.WithEndpoint("localhost:4317"), otlptracegrpc.WithInsecure(), // or WithTLSCredentials() for TLS otlptracegrpc.WithHeaders(map[string]string{ "authorization": "Bearer your-token-here", }), ) Environment variable export OTEL_EXPORTER_OTLP_HEADERS="authorization=Bearer your-token-here" Rate limiting An optional rate limit resource can be specified to throttle incoming requests. When the rate limit is breached, requests will receive a ResourceExhausted gRPC status code. Fields address The address to listen on for gRPC connections. Type: string Default: 0.0.0.0:4317 auth_token Optional bearer token for authentication. When set, requests must include 'authorization: Bearer <token>' metadata. This field contains sensitive information that usually shouldn’t be added to a configuration directly. For more information, see Secrets. Type: string Default: "" max_recv_msg_size Maximum size of gRPC messages to receive in bytes. Type: int Default: 4194304 rate_limit An optional rate limit resource to throttle requests. Type: string Default: "" tcp TCP listener socket configuration. Type: object tcp.reuse_addr Enable SO_REUSEADDR, allowing binding to ports in TIME_WAIT state. Useful for graceful restarts and config reloads where the server needs to rebind to the same port immediately after shutdown. Type: bool Default: false tcp.reuse_port Enable SO_REUSEPORT, allowing multiple sockets to bind to the same port for load balancing across multiple processes/threads. Type: bool Default: false tls TLS configuration for gRPC. Type: object tls.cert_file Path to the TLS certificate file. Type: string Default: "" tls.enabled Enable TLS connections. Type: bool Default: false tls.key_file Path to the TLS key file. Type: string Default: "" Back to top × Simple online edits For simple changes, such as fixing a typo, you can edit the content directly on GitHub. Edit on GitHub Or, open an issue to let us know about something that you want us to change. Open an issue Contribution guide For extensive content updates, or if you prefer to work locally, read our contribution guide . Was this helpful? thumb_up thumb_down group Ask in the community mail Share your feedback group_add Make a contribution 🎉 Thanks for your feedback! otlp_http parquet