Skip to main content

Jaeger Receiver

Status Available in: core, contrib, k8s Maintainers: @yurishkuro Source: opentelemetry-collector-contrib

Supported Telemetry

Traces

Overview

Getting Started

By default, the Jaeger receiver will not serve any protocol. A protocol must be named under the protocols object for the jaeger receiver to start. The below protocols are supported, each supports an optional endpoint object configuration parameter.
  • grpc (default endpoint = localhost:14250)
  • thrift_binary (default endpoint = localhost:6832)
  • thrift_compact (default endpoint = localhost:6831)
  • thrift_http (default endpoint = localhost:14268)
See our security best practices doc to understand how to set the endpoint in different environments. Examples:
receivers:
  jaeger:
    protocols:
      grpc:
  jaeger/withendpoint:
    protocols:
      grpc:
        endpoint: 0.0.0.0:14260

Advanced Configuration

UDP protocols (currently thrift_binary and thrift_compact) allow setting additional server options:
  • queue_size (default 1000) sets max not yet handled requests to server
  • max_packet_size (default 65_000) sets max UDP packet size
  • workers (default 10) sets number of workers consuming the server queue
  • socket_buffer_size (default 0 - no buffer) sets buffer size of connection socket in bytes
Examples:
protocols:
  thrift_binary:
    endpoint: 0.0.0.0:6832
    queue_size: 5_000
    max_packet_size: 131_072
    workers: 50
    socket_buffer_size: 8_388_608
Several helper files are leveraged to provide additional capabilities automatically:

Remote Sampling

Since version v0.61.0, remote sampling is no longer supported by the jaeger receiver. Since version v0.59.0, the jaegerremotesapmpling extension is available that can be used instead.

Configuration

Example Configuration

# The following demonstrates specifying different endpoints.
# The Jaeger receiver connects to ports on all available network interfaces.
# Ex: `endpoint: "9876"` is incorrect.
# Ex: `endpoint: "1.2.3.4:9876"`  and ":9876" is correct.
jaeger/customname:
  protocols:
    grpc:
      endpoint: "localhost:9876"
    thrift_http:
      endpoint: ":3456"
    thrift_compact:
      endpoint: "0.0.0.0:456"
      queue_size: 100_000
      max_packet_size: 131_072
      workers: 100
      socket_buffer_size: 65_536
    thrift_binary:
      endpoint: "0.0.0.0:789"
      queue_size: 1_000
      max_packet_size: 65_536
      workers: 5
      socket_buffer_size: 0
# The following demonstrates how to enable protocols with defaults.
jaeger/defaults:
  protocols:
    grpc:
    thrift_http:
    thrift_compact:
    thrift_binary:
# The following demonstrates only enabling certain protocols with defaults/overrides.
jaeger/mixed:
  protocols:
    grpc:
      endpoint: "localhost:9876"
    thrift_compact:
# The following demonstrates specifying different endpoints.
# The Jaeger receiver connects to ports on all available network interfaces.
# Ex: `endpoint: "9876"` is incorrect.
# Ex: `endpoint: "1.2.3.4:9876"`  and ":9876" is correct.
jaeger/tls:
  protocols:
    grpc:
      tls:
        cert_file: /test.crt
        key_file: /test.key
      endpoint: "localhost:9876"
    thrift_http:
      endpoint: ":3456"
jaeger/empty:
# The following demonstrates how to enable protocols with defaults
jaeger/typo_default_proto_config:
  protocols:
    grpc:
      endpoint: "127.0.0.1:123"
    thrift_htttp:
jaeger/no_proto_config:
  protocols:
# The following demonstrates how to enable protocols with defaults
jaeger/bad_proto_config:
  protocols:
    thrift_htttp:
      endpoint: "127.0.0.1:123"

Last generated: 2026-04-13