# Apache Camel

<!-- llms-txt-link: /llms.txt -->

> OpenTelemetry Java agent instrumentation

This instrumentation enables tracing for Apache Camel 2.x applications by generating spans for each route execution. For Camel versions 3.5 and newer, users should instead use the native 'camel-opentelemetry' component provided directly by the Camel project.

- **Name**: `camel-2.20`
- **Scope**: `io.opentelemetry.camel-2.20`
- **Target versions**: `org.apache.camel:camel-core:[2.19,3)`
- **Library**: https://camel.apache.org/

## Telemetry

- **Span attributes**: `db.name`, `db.statement`, `db.system`, `http.request.method`, `http.response.status_code`, `url.full`, `messaging.destination.name`, `messaging.message.id`, `camel.uri`

## Configuration

| Option | Type | Default | Description |
| --- | --- | --- | --- |
| `otel.instrumentation.camel.experimental-span-attributes` | boolean | false | Enable the capture of experimental `camel.uri`, `camel.kafka.partitionKey`, `camel.kafka.key` and `camel.kafka.offset` span attributes. |

## Data

- **JSON**: [/data/javaagent/instrumentations/camel-2.20/camel-2.20-14edbd09649c.json](/data/javaagent/instrumentations/camel-2.20/camel-2.20-14edbd09649c.json)
- **Explore**: [/java-agent/instrumentation/camel-2.20](/java-agent/instrumentation/camel-2.20)
