OpenTelemetry Integration

Send telemetry data using OTLP protocol

Overview

Qorrelate is OpenTelemetry-native and fully supports the OTLP protocol for ingesting traces, metrics, and logs. Use any OTLP-compatible SDK or the OpenTelemetry Collector.

OpenTelemetry Native

No proprietary agents needed. Use standard OpenTelemetry SDKs.

OTLP Endpoints

SignalHTTP Endpoint
Traceshttps://qorrelate.io/v1/traces
Metricshttps://qorrelate.io/v1/metrics
Logshttps://qorrelate.io/v1/logs

OpenTelemetry Collector Configuration

receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318

exporters:
  otlphttp:
    endpoint: https://qorrelate.io
    headers:
      Authorization: Bearer ${QORRELATE_API_KEY}
      X-Organization-Id: ${QORRELATE_ORG_ID}

service:
  pipelines:
    traces:
      receivers: [otlp]
      exporters: [otlphttp]
    metrics:
      receivers: [otlp]
      exporters: [otlphttp]
    logs:
      receivers: [otlp]
      exporters: [otlphttp]

Docker Deployment

docker run -d --name otel-collector \
  -p 4317:4317 -p 4318:4318 \
  -v $(pwd)/otel-config.yaml:/etc/otel/config.yaml \
  -e QORRELATE_API_KEY=your_api_key \
  -e QORRELATE_ORG_ID=your_org_id \
  otel/opentelemetry-collector-contrib:latest \
  --config /etc/otel/config.yaml

Kubernetes Deployment

helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
helm install otel-collector open-telemetry/opentelemetry-collector \
  --set mode=deployment \
  --set config.exporters.otlphttp.endpoint=https://qorrelate.io

SDK Environment Variables

export OTEL_EXPORTER_OTLP_ENDPOINT="https://qorrelate.io"
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer YOUR_API_KEY,X-Organization-Id=YOUR_ORG_ID"
export OTEL_SERVICE_NAME="my-service"
export OTEL_RESOURCE_ATTRIBUTES="service.version=1.0.0,deployment.environment=production"

Recommended Resource Attributes

AttributeDescription
service.nameLogical name (required)
service.versionVersion
deployment.environmentEnvironment

💡 Pro Tip

Always set service.name to identify your service in traces.