# OpenTelemetry (OTLP)

### Description

This OTLP destination configures an OTLP exporter to send metrics, logs, and traces to an endpoint.

### Supported Types

| Logs | Metrics | Traces | Bindplane Collector |
| ---- | ------- | ------ | ------------------- |
| ✓    | ✓       | ✓      | `v1.36.0`+          |

### Configuration Table

<table><thead><tr><th width="272.95703125">Field</th><th>Description</th></tr></thead><tbody><tr><td>Hostname</td><td>Hostname or IP address where the exporter will send OTLP data.</td></tr><tr><td>Port</td><td>TCP port to which the exporter is going to send OTLP data.</td></tr><tr><td>Protocol</td><td>The OTLP protocol to use when sending OTLP telemetry. Can be gRPC or HTTP.</td></tr><tr><td>Compression</td><td>Compression algorithm to use when sending data to the OTLP server. Ensure that the server supports the compression algorithm selected. Kinds of compression depend on <code>Protocol</code>.</td></tr><tr><td>Additional Headers</td><td>Add additional headers to be attached to each request.</td></tr><tr><td>Enable TLS</td><td>Whether or not to use TLS.</td></tr><tr><td>Skip TLS Certificate Verification</td><td>Enable to skip TLS certificate verification.</td></tr><tr><td>TLS Certificate Authority File</td><td>Certificate authority used to validate TLS certificates.</td></tr><tr><td>Server Name Override</td><td>Optional virtual hostname. Indicates the name of the server requested by the client. This option is generally not required. Read more <a href="https://github.com/open-telemetry/opentelemetry-collector/blob/main/config/configtls/README.md#client-configuration">here</a>.</td></tr><tr><td>Mutual TLS</td><td>Whether or not to use mutual TLS authentication.</td></tr><tr><td>Mutual TLS Client Certificate File</td><td>A TLS certificate used for client authentication.</td></tr><tr><td>Mutual TLS Client Private Key File</td><td>A TLS private key used for client authentication.</td></tr></tbody></table>

### Supported Retry and Queuing Settings

This destination supports the [retry settings](https://docs.bindplane.com/configuration/bindplane-otel-collector/retry-on-failure), the [sending queue settings](https://docs.bindplane.com/configuration/bindplane-otel-collector/sending-queue), and the [persistent queue settings.](https://docs.bindplane.com/configuration/bindplane-otel-collector/persistent-queue)

| Sending Queue | Persistent Queue | Retry on Failure |
| ------------- | ---------------- | ---------------- |
| ✓             | ✓                | ✓                |

### Example Configuration

In this configuration, we specify the `hostname` of the OTLP server telemetry is going to be sent to, as well as what `protocol` will be used.

**Web Interface**

<figure><img src="https://1405008107-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgmiOMzBfoNFwmKJFHMcJ%2Fuploads%2Fgit-blob-3c9abfe650c89910db45941d7ac046bbfd401aa4%2Fintegrations-destinations-opentelemetry-otlp-image-1.png?alt=media" alt="Bindplane docs - OpenTelemetry OTLP - image 1"><figcaption></figcaption></figure>

**Standalone Destination**

```yaml
apiVersion: bindplane.observiq.com/v1
kind: Destination
metadata:
  id: otlp
  name: otlp
spec:
  type: otlp
  parameters:
    - name: hostname
      value: '0.0.0.0'
    - name: protocol
      value: 'grpc'
    - name: grpc_port
      value: '4317'
    - name: enable_tls
      value: 'false'
```
