Croway opened a new pull request, #24689:
URL: https://github.com/apache/camel/pull/24689

   ## Summary
   
   _Claude Code on behalf of Croway_
   
   New `camel-test-infra-observability` module providing a local 
Apache-2.0-only observability stack via `camel infra run observability`.
   
   Composes 4 containers on a shared Docker network:
   - **Prometheus** (`:9090`) — scrapes Camel metrics at `:9876/observe/metrics`
   - **VictoriaTraces** (`:10428`) — receives OTLP traces
   - **VictoriaLogs** (`:9428`) — receives OTLP logs
   - **Perses** (`:3000`) — dashboard UI, auto-provisioned with Camel project 
and overview dashboard
   
   ### Changes
   
   - **New module**: `test-infra/camel-test-infra-observability/` with 4 
container classes, service interface, multi-container orchestrator
   - **New export target**: `--open-telemetry-agent-export=observability` 
enables traces + logs export to the stack
   - **Deprecated**: `--open-telemetry-agent-export=jaeger` in favor of `otlp` 
(backward compatible)
   - **Generalized**: `OpenTelemetryTracer.exportTarget` check accepts any 
non-empty value instead of hardcoded `"jaeger"`
   - **Fixed**: Fork version propagation in `Run.java` — forked JBang processes 
now inherit the CLI's catalog version
   - **OOB dashboard**: Perses auto-provisioned with Camel Overview dashboard 
(exchanges, throughput, failure rate, processing time, JVM memory/threads/GC, 
CPU, load average)
   
   ### Usage
   
   ```bash
   # Start the observability stack
   camel infra run observability
   
   # Run a Camel app with full observability (metrics + traces + logs)
   camel run MyRoute.java --observe \
     --open-telemetry-agent --open-telemetry-agent-export=observability
   ```
   
   ### Verified
   
   - Prometheus scrapes Camel metrics (zero-config with `--observe`)
   - VictoriaTraces receives OTel agent spans (Kafka, JDBC, HTTP 
auto-instrumented)
   - VictoriaLogs receives logs with trace_id/span_id correlation
   - Perses dashboard shows exchanges, throughput, processing time, JVM metrics
   - Multiple Camel instances supported via `--management-port`
   
   ## Test plan
   
   - [ ] `camel infra run observability` starts all 4 containers
   - [ ] `camel infra get observability` returns JSON with all endpoint URLs
   - [ ] `camel run --observe` sends metrics to Prometheus
   - [ ] `camel run --observe --open-telemetry-agent 
--open-telemetry-agent-export=observability` sends traces and logs
   - [ ] Perses dashboard at `:3000/projects/camel/dashboards/overview` shows 
data
   - [ ] `camel infra stop observability` stops all containers
   - [ ] `--open-telemetry-agent-export=jaeger` still works (backward 
compatible)
   - [ ] `--open-telemetry-agent-export=otlp` works as new generic external 
export


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to