https://github.com/stn1slv/demo-apps
Demo apps to demonstrate telemetry
https://github.com/stn1slv/demo-apps
apache-camel opentelemetry opentracing telemetry zipkin
Last synced: 6 months ago
JSON representation
Demo apps to demonstrate telemetry
- Host: GitHub
- URL: https://github.com/stn1slv/demo-apps
- Owner: stn1slv
- License: mit
- Created: 2021-05-30T11:22:35.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-06-12T11:47:00.000Z (about 1 year ago)
- Last Synced: 2025-06-12T12:43:05.995Z (about 1 year ago)
- Topics: apache-camel, opentelemetry, opentracing, telemetry, zipkin
- Language: Java
- Homepage:
- Size: 663 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Apache Camel: Telemetry demo
This directory contains sources of demo apps based on Apache Camel with OpenTelemetry.


The environment is the following:
- Demo apps:
- [Trip booking app](TripBooking)
- [Flight booking app](FlightBooking)
- [Hotel booking app](HotelBooking)
- [Car booking app](CarBooking)
- Apache Kafka
- Jaeger
- OpenTelemetry Collector
- Prometheus
- Grafana
- FileBeat
- ElasticSearch
- Grafana, including:
- Preconfigured datasources for Jaeger, Prometheus and ElasticSearch
- Dashboard for Apache Camel apps
- Dashboard for Logs from ElasticSearch
- Dashboard for Jaeger
## Running
You may want to remove any old containers to start clean:
```
docker rm -f kafka prometheus grafana elasticsearch jaeger otel-collector filebeat tripbooking carbooking flightbooking hotelbooking
```
We suggest using two terminal windows to start the following components:
- infrastructure components
- demo apps
### Startup infrastructure components
```
docker-compose -f compose.yml -f compose.infra.yml up --remove-orphans
```
### Startup demo apps
```
docker-compose -f compose.yml -f compose.demo-apps.yml up
```
## Testing
Testing tools are following:
- Any HTTP client (web browser, curl, httpie, postman etc.)
- Apache JMeter for generation load
#### cURL
Sync communication (over HTTP):
```
curl http://127.0.0.1:8080/camel/bookTrip
```
Async communication (over Kafka):
```
curl http://127.0.0.1:8080/camel/asyncBookTrip
```
#### Apache JMeter
You can find JMeter project by [the link](TripBooking/Demo.jmx).