For the complete documentation index, see llms.txt. This page is also available as Markdown.

OpenObserve (OTLP)

The OpenObserve destination sends logs, metrics, and traces to OpenObserve using the OpenTelemetry Protocol (OTLP). Telemetry is delivered over OTLP/HTTP or OTLP/gRPC and authenticated with Basic credentials issued by OpenObserve.

Supported Telemetry Types

Platform
Metrics
Logs
Traces

Linux

Windows

macOS

Prerequisites

  • A running OpenObserve instance (self-hosted or cloud) reachable from the collector.

  • The OTLP endpoint for your deployment:

    • HTTP: https://<server>/api/<organization> (no trailing slash, no signal path).

    • gRPC: <hostname>:<port> (default gRPC port 5081), plus the organization name.

  • The base64-encoded Basic authentication credentials from OpenObserve's Data Sources page.

  • The target stream name (defaults to default).

Configuration

Bindplane docs - OpenObserve (OTLP) - image 1

General

Parameter
Type
Default
Description

Choose Telemetry Type

Telemetry Selector

["Logs","Metrics","Traces"]

Select which types of telemetry to export. Valid values: Logs, Metrics, Traces.

Protocol

Enum

http

The OTLP protocol to use when sending telemetry to OpenObserve. Valid values: http, grpc.

Authorization

String

Required. Sensitive. Base64-encoded credentials for Basic authentication. Copy the value from OpenObserve's Data Sources page (without the Basic prefix).

Stream Name

String

default

Required. The stream name to send telemetry data to.

HTTP

Applies when protocol is http.

Parameter
Type
Default
Description

HTTP Endpoint

String

Required. The OpenObserve OTLP HTTP endpoint URL. Format: https://<server>/api/<organization>. Do not include a trailing slash or the signal path (/v1/logs, /v1/metrics, /v1/traces).

gRPC

Applies when protocol is grpc.

Parameter
Type
Default
Description

GRPC Endpoint

String

Required. The OpenObserve gRPC endpoint. Format: <hostname>:<port>. Default gRPC port is 5081.

Organization

String

Required. The OpenObserve organization name for gRPC connections.

Advanced

Parameter
Type
Default
Description

Enable TLS

Boolean

true

Whether or not to use TLS.

Skip TLS Certificate Verification

Boolean

false

Skip TLS certificate verification. Applies when enable_tls is true.

TLS Certificate Authority File

String

Certificate authority used to validate TLS certificates. Applies when enable_tls is true and insecure_skip_verify is false.

Compression

Enum

gzip

Compression algorithm to use when sending data to OpenObserve. Valid values: none, gzip.

Drop Raw Copy

Boolean

true

When enabled, the raw copy of the log stored in log.record.original is dropped.

Retry on Failure

Parameter
Type
Default
Description

Enable Retry on Failure

Boolean

true

Attempt to resend telemetry data that has failed to be transmitted to the destination.

Initial interval

Integer

5

Time (in seconds) to wait after the first failure before retrying. Applies when retry is enabled.

Max interval

Integer

30

The upper bound (in seconds) on backoff. Applies when retry is enabled.

Max elapsed time

Integer

300

The maximum amount of time (in seconds) spent trying to send a batch, used to avoid a never-ending retry loop. Applies when retry is enabled.

Sending Queue

Parameter
Type
Default
Description

Enable Sending Queue

Boolean

true

Buffer telemetry data temporarily before sending to help ensure telemetry data is not lost in case of a temporary network outage.

Number of Consumers

Integer

10

Number of consumers that dequeue batches. Applies when the sending queue is enabled.

Queue Size

Integer

5000

Maximum number of batches kept in memory before dropping. Applies when the sending queue is enabled.

Enable Persistent Queuing

Boolean

true

Buffer telemetry data to disk before sending to help ensure telemetry data is not lost in case of network outages or collector restarts. Applies when the sending queue is enabled.

Persistent Queue Storage

Extension

file_storage_persistent_queue

The storage to use for the persistent queue. Applies when the sending queue and persistent queuing are enabled.

Example Configuration

Standalone Destination

Configuration Tips

Choosing a protocol and endpoint

  • For HTTP, set http_endpoint to https://<server>/api/<organization> and leave off any trailing slash or signal path. Bindplane appends the OTLP signal paths automatically.

  • For gRPC, set grpc_endpoint to <hostname>:<port> (default port 5081) and supply grpc_organization. The organization is sent as a request header rather than embedded in the endpoint.

Authentication

  • authorization is the base64-encoded Basic credential copied from OpenObserve's Data Sources page. Paste only the encoded token, without the Basic prefix. Bindplane adds the Basic prefix when sending the Authorization header.

  • Treat this value as a secret. It is stored as a sensitive parameter.

Stream routing and raw log copies

  • stream_name controls which OpenObserve stream receives the data. Use distinct streams to separate environments or signal types.

  • drop_raw_copy removes the log.record.original attribute before export. Leave it enabled to reduce payload size, or disable it if you need the unparsed original log retained in OpenObserve.

Troubleshooting

Symptom: Telemetry is rejected with an authentication or 401 error. Solution: Confirm authorization holds the base64 token from OpenObserve's Data Sources page with no Basic prefix and no surrounding whitespace. Bindplane adds the Basic prefix automatically.

Symptom: Data is sent but does not appear in OpenObserve, or requests return a 404. Solution: Verify the endpoint format. For HTTP it must be https://<server>/api/<organization> with no trailing slash and no signal path. Confirm the organization in the URL (HTTP) or grpc_organization (gRPC) matches your OpenObserve organization.

Symptom: TLS handshake failures when connecting to OpenObserve. Solution: If the server uses a private or self-signed certificate, set ca_file to the certificate authority, or temporarily set insecure_skip_verify to true to confirm the connection. Disabling enable_tls is only appropriate for plaintext endpoints.

Last updated

Was this helpful?