Skip to Content
TaresPlatformConnectorsOpenTelemetry (OTLP)

OpenTelemetry: otlp

Receives OTLP/HTTP logs, traces, and metrics at POST /v1/{logs,traces,metrics}. One source ingests every service: resource attributes (e.g. service.name) become labels, so everything an OTel SDK or Collector exports correlates by service with no per-service setup.

Prerequisites: something exporting OTLP, such as an instrumented app or an OpenTelemetry Collector, pointed at the daemon. For OTLP/gRPC, the otlp-grpc extra (pip install 'tares[otlp-grpc]'); the receiver listens on :4317 (TARES_OTLP_GRPC_PORT, off to disable).

Set up

Ask a connected agent:

Use tares to create an OTLP source keyed by service.

The agent calls create_source; then point your exporter at the daemon (below).

Then point the exporter at the daemon:

OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:8787 # OTLP/HTTP → /v1/{logs,traces,metrics} # or gRPC (otlp-grpc extra): OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317

On a secured instance (tares up --auth), exporters send an ingest-scoped API key as Authorization: Bearer <key> (e.g. OTEL_EXPORTER_OTLP_HEADERS=Authorization=Bearer <key>).

Configuration

No connector-specific fields, just labels. A label reads its value from one of three places in the event, by path: resourceAttributes.<key> for resource attributes (for example resourceAttributes.service.name), attributes.<key> for the attributes of a log record, span or data point, and text for the rendered log line. There is no bare service field, so a label that uses field: service gets no value from an OTLP event.

Verify

Recent events shows spans/logs/metric points as they arrive; Explore lists services under the service key.

Last updated on