> ## Documentation Index
> Fetch the complete documentation index at: https://docs.honeycomb.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom

<Badge className="hny-badge-enterprise-addon" stroke>Ent+</Badge>

<Note>
  This feature is available as an add-on for the [Honeycomb Enterprise plan](https://www.honeycomb.io/pricing/).
  Please contact your Honeycomb account team for details.
</Note>

## Custom Processor

The Custom processor can be used to inject a custom processor configuration into a pipeline. A list of supported processors can be found [here](https://github.com/observIQ/observiq-otel-collector/blob/main/docs/processors.md).

The Custom processor is useful for solving use cases not covered by the Honeycomb Telemetry Pipeline's other processor types.

## Supported Types

| Metrics | Logs | Traces |
| :------ | :--- | :----- |
| ✓       | ✓    | ✓      |

The custom processor type can support all telemetry types, however, it is up to the user to enable / disable the correct types\
based on the processor being used.

## Configuration Table

| Parameter        | Type                | Default                         | Description                                                                         |
| :--------------- | :------------------ | :------------------------------ | :---------------------------------------------------------------------------------- |
| telemetry\_types | `telemetrySelector` | `["Logs", "Metrics", "Traces"]` | The list of telemetry types the processor will act on.                              |
| configuration    | `yaml`              | required                        | Enter any supported Processor and the YAML will be inserted into the configuration. |

## Example Configuration

Inject the following [resource processor](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/resourceprocessor) configuration:

```yaml theme={}
resource:
  attributes:
    - action: upsert
      key: custom
      value: true
```

### Web Interface

<img src="https://mintcdn.com/honeycomb/xBk0WdKAt1ctZm35/_assets/images/htp/xnapper-custom.png?fit=max&auto=format&n=xBk0WdKAt1ctZm35&q=85&s=0418c23bf7434d5b440522416df97b16" alt="Honeycomb Docs - Custom - image 1" width="1950" height="1912" data-path="_assets/images/htp/xnapper-custom.png" />

### Standalone Processor

```yaml theme={}
apiVersion: bindplane.observiq.com/v1
kind: Processor
metadata:
  id: custom
  name: custom
spec:
  type: custom
  parameters:
    - name: configuration
      value: |
        resource:
          attributes:
            - action: upsert
              key: custom
              value: true
    - name: telemetry_types
      value:
        - Metrics
        - Traces
        - Logs
```

### Configuration with Embedded Processor

```yaml theme={}
apiVersion: bindplane.observiq.com/v1
kind: Configuration
metadata:
  id: custom
  name: custom
  labels:
    platform: linux
spec:
  sources:
    - type: journald
      parameters:
        - name: units
          value: []
        - name: directory
          value: ''
        - name: priority
          value: info
        - name: start_at
          value: end
      processors:
        - type: custom
          parameters:
            - name: configuration
              value: |
                resource:
                  attributes:
                    - action: upsert
                      key: custom
                      value: true
            - name: telemetry_types
              value:
                - Metrics
                - Traces
                - Logs
  selector:
    matchLabels:
      configuration: custom
```
