Getting Started

For advanced users trying to implement complex observability pipelines, Odigos support sending data to any OTLP http endpoint.

Note that if your backend expects OTLP over gRPC you should use the OTLP gRPC destination instead.

If your backend is supported natively in Odigos, it’s recommended to use the native integration.

Using Basic Authentication

This section is relevant if your OTLP http endpoint requires basic authentication (username and password).

To configure basic authentication, use the optional config options Basic Auth Username and Basic Auth Password.

Configuring Destination Fields

  • OTLP_HTTP_ENDPOINT string : OTLP http Endpoint. The format is host:port, host is required, port is optional and defaults to the default OTLP gRPC port 4317.
    • This field is required
    • Example: http://host:port
  • OTLP_HTTP_BASIC_AUTH_USERNAME string : Basic Auth Username. in case the otlp receiver requires basic auth, this is the username
    • This field is optional
    • Example: username
  • OTLP_HTTP_BASIC_AUTH_PASSWORD string : Basic Auth Password. in case the otlp receiver requires basic auth, this is the password
    • This field is optional
    • Example: password

Adding Destination to Odigos

There are two primary methods for configuring destinations in Odigos:

Using the UI
1

Use the Odigos CLI to access the UI

odigos ui
2

Click on Add Destination, select OTLP http and follow the on-screen instructions

Using Kubernetes manifests
1

Save the YAML below to a file (e.g. otlphttp.yaml)

apiVersion: odigos.io/v1alpha1
kind: Destination
metadata:
  name: otlphttp-example
  namespace: odigos-system
spec:
  data:
    OTLP_HTTP_ENDPOINT: <OTLP http Endpoint>
    # Note: The commented fields below are optional.
    # OTLP_HTTP_BASIC_AUTH_USERNAME: <Basic Auth Username>
  destinationName: otlphttp
  # Uncomment the 'secretRef' below if you are using the optional Secret.
  # secretRef:
  #   name: otlphttp-secret
  signals:
  - TRACES
  - METRICS
  - LOGS
  type: otlphttp

---

# The following Secret is optional. Uncomment the entire block if you need to use it.
# apiVersion: v1
# data:
#   OTLP_HTTP_BASIC_AUTH_PASSWORD: <Base64 Basic Auth Password>
# kind: Secret
# metadata:
#   name: otlphttp-secret
#   namespace: odigos-system
# type: Opaque
2

Apply the YAML using kubectl

kubectl apply -f otlphttp.yaml