OpenTelemetry

Endpoint

otel

URL

https://${OBSERVE_CUSTOMER}.collect.observeinc.com/v2/otel

Maximum Request Size (compressed)

10MB

Maximum Request Size (uncompressed)

50MB

Global Individual Observation Limit

4MB

Observe implements the write-only HTTP endpoint for OpenTelemetry as defined by the OpenTelemetry Protocol Definition and supports the following observation types:

Type

URL Suffix

Protocol Status

Traces

v1/traces

stable

Metrics

v1/metrics

stable

Logs

v1/logs

stable

The request body should be encoded in the Protobuf format and sent with the content-type application/x-protobuf. GRPC ingestion is not supported for the OpenTelemetry endpoint.

To send data using the OpenTelemetry Collector, you need to authenticate with the endpoint using a Datastream Token attached as an http authorization header. Use the following configuration snippets as a guide:

exporters:
  ...
  otlphttp:
    endpoint: "https://${OBSERVE_CUSTOMER}.collect.observeinc.com/v2/otel"
    headers:
      authorization: "Bearer ${OBSERVE_TOKEN}"
service:
  ...
  pipelines:
    traces:
      ...
      exporters: [otlphttp]

If you want to bypass the OpenTelemetry Collector and test the endpoint directly, you must specify the URL and the relevant suffix. For instance, traces should be sent to the following URL:

https://${OBSERVE_CUSTOMERID}.collect.observeinc.com/v2/otel/v1/traces

Again, you need an Observe token for authentication as in this example:

https://${OBSERVE_CUSTOMERID}.collect.observeinc.com/v2/otel/v1/traces \
-H "Authorization: Bearer ab1cdE2FGhiJKlmnop34Q:rstUv5w6Xy7z8AB_CdeFg9h0iJK1mnOPqr" \
-d @sample_trace.json