Skip to content

OTLP (OpenTelemetry Protocol)

OTLP (OpenTelemetry Protocol) is the specification for the transmission of telemetry data (logs, Metrics, and traces) in the OpenTelemetry ecosystem.^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md]

Protocol Support

The protocol defines how data is encoded and transported, with the OpenTelemetry Collector acting as a common backend that supports receiving data over gRPC and HTTP.^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md] Standard implementations typically listen for gRPC traffic on port 4317.^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md]

Configuration

In a standard OpenTelemetry Collector pipeline, the OTLP receiver is configured within the receivers section of the configuration file^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md]. Below is a basic example of a collector configuration that sets up an OTLP receiver, batches the data, and exports it to a logging stdout exporter^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md]:

receivers:
  otlp:
    protocols:
      grpc:
      http:
processors:
  batch:
exporters:
  logging:
    loglevel: debug
service:
  pipelines:
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters: [logging]

Usage in Service Meshes

OTLP is frequently used to enable advanced observability features within Service mesh architectures, such as Istio^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md]. In these environments, a Telemetry resource can be configured to direct Access Log Service (ALS) data to an OpenTelemetry Collector endpoint via the OTLP protocol^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md].

Sources

^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__open-telemetry__README.md]