Skip to main content
The OTLP integration requires CXDOT Collector 1.4.0 or greater. OpenTelemetry Protocol (OTLP) is OpenTelemetry’s vendor-neutral protocol for transmitting metrics, logs, and traces. Use the OTLP integration with the Chronosphere XDOT Collector to ingest telemetry from instrumented apps.

Supported telemetry types

The OTLP integration supports these telemetry types:

Prerequisites

The OTLP integration has the following prerequisites:
  • Instrument your apps with an OpenTelemetry SDK or another client that exports OTLP over gRPC or HTTP.
  • Configure network access from your apps to an OTLP endpoint for the collector.

Configure

To configure the OTLP integration, follow these steps:
  1. Configure each app’s OTLP exporter endpoint. When the collector runs as a DaemonSet, use the node’s host IP so the app sends to the collector on the same node. Send OTLP over gRPC on port 4317 or HTTP on port 4318. If you use the admission controller for routing, add the admission.cxdot.paloaltonetworks.com/enabled: "true" label to each app’s pod template and recreate existing pods.

Validate

To validate the OTLP integration, follow these steps:
  1. Generate telemetry from an instrumented app.
  2. In Live Telemetry Analyzer, filter for cxdot.integration.name=otlp. Confirm that the metric names from your app appear.
  3. In Metrics Explorer, run the following query:
    Confirm that the query returns the expected time series for each instrumented service.
For more information about diagnosing a failing integration, see Troubleshooting.

Configuration reference

Configure one OTLP integration instance with the following settings. In Helm values, place these settings under config.integrations.otlp. In a Collector configuration file, place them under cxdot.integrations.otlp.

Optional settings

  • enabled Type: boolean. Optional. Default: true. Whether to enable this OTLP integration instance. If true, the Collector accepts OTLP telemetry on the configured endpoints. If false, the Collector doesn’t run this integration instance.
  • grpc Type: object. Optional. Settings for receiving telemetry over OTLP/gRPC.
  • grpc.endpoint Type: string. Optional. Default: 0.0.0.0:4317. Network address and port where the Collector accepts OTLP/gRPC connections. Use an address in host:port format.
  • grpc.max_connection_age Type: duration. Optional. Default: 30m. Maximum time that an OTLP/gRPC connection remains open before the client reconnects. Periodic reconnection helps distribute clients across Collector replicas behind a load-balancing service.
  • http Type: object. Optional. Settings for receiving telemetry over OTLP/HTTP.
  • http.endpoint Type: string. Optional. Default: 0.0.0.0:4318. Network address and port where the Collector accepts OTLP/HTTP connections. Use an address in host:port format.