add listener routes for internal service proxying (#793)

This commit is contained in:
Adil Hafeez 2026-03-01 23:51:14 -08:00
parent 198c912202
commit c2480639b2
No known key found for this signature in database
GPG key ID: 9B18EF7691369645
13 changed files with 219 additions and 2 deletions

View file

@ -51,6 +51,7 @@ This starts:
- Flight Agent on port 10520
- Open WebUI on port 8080
- Plano Proxy on port 8001
- Jaeger UI accessible at http://localhost:8001/traces (routed through Plano)
### 4. Test the System
@ -105,9 +106,30 @@ Both agents run as Docker containers and communicate with Plano via `host.docker
## Observability
This demo includes full OpenTelemetry (OTel) compatible distributed tracing to monitor and debug agent interactions:
This demo includes full OpenTelemetry (OTel) compatible distributed tracing to monitor and debug agent interactions.
The tracing data provides complete visibility into the multi-agent system, making it easy to identify bottlenecks, debug issues, and optimize performance.
Jaeger UI is accessible through Plano's agent listener using the `routes` config:
```bash
# Access Jaeger UI through the same Plano port
curl http://localhost:8001/traces
```
This is configured in `config.yaml` using the `routes` field on the listener, which proxies `/traces` requests to the Jaeger service:
```yaml
listeners:
- type: agent
name: travel_booking_service
port: 8001
routes:
- path_prefix: /traces
upstream: http://jaeger:16686
agents:
...
```
For more details on setting up and using tracing, see the [Plano Observability documentation](https://docs.planoai.dev/guides/observability/tracing.html).
![alt text](tracing.png)

View file

@ -18,6 +18,9 @@ listeners:
name: travel_booking_service
port: 8001
router: plano_orchestrator_v1
routes:
- path_prefix: /traces
upstream: http://jaeger:16686
agents:
- id: weather_agent
description: |