# Custom

### Custom Extension

The Custom extension can be used to inject a custom OTel extension into a Configuration. A List of supported extensions can be found [here](https://github.com/observIQ/bindplane-otel-collector/blob/main/docs/extensions.md).

### Configuration Table

<table><thead><tr><th width="151.4140625">Parameter</th><th width="194.11328125">Type</th><th width="101.88671875">Default</th><th>Description</th></tr></thead><tbody><tr><td>telemetry_types</td><td><code>telemetrySelector</code></td><td><code>[]</code></td><td>Choose Telemetry Type.</td></tr><tr><td>configuration</td><td><code>yaml</code></td><td>required</td><td>Enter any supported Extension and the YAML will be inserted into the configuration.</td></tr></tbody></table>

### Example Configuration

In this example, we use the Custom extension type to inject the following [health check extension](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.91.0/extension/healthcheckextension/README.md).

```yaml
healthcheck:
  endpoint: 0.0.0.0:13133
  path: /health
```

**Web Interface**

<figure><img src="/files/6wE8zQaETVdTqDvxR9U1" alt="Bindplane docs - Custom - image 1"><figcaption></figcaption></figure>

**Standalone Extension**

```yaml
apiVersion: bindplane.observiq.com/v1
kind: Extension
metadata:
  name: custom-health-check
  spec:
    type: custom
    parameters:
      - name: telemetry_types
        value: ['Logs', 'Metrics', 'Traces']
      - name: configuration
        value: |
          health_check:
            endpoint: 0.0.0.0:13133
            path: /health
```

**Configuration with Embedded Extension**

```yaml
apiVersion: bindplane.observiq.com/v1
kind: Configuration
metadata:
  name: custom-configuration-with-extensions
  labels:
    platform: linux
spec:
  extensions:
    - type: custom
      parameters:
        - name: telemetry_types
          value: ['Logs', 'Metrics', 'Traces']
        - name: configuration
          value: |
            health_check:
              endpoint: 0.0.0.0:13133
              path: health
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bindplane.com/configuration/bindplane-otel-collector/extensions/custom.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
