mirror of
https://github.com/katanemo/plano.git
synced 2026-06-17 15:25:17 +02:00
update based on requested changes
This commit is contained in:
parent
21ca0d8d9b
commit
dfa967068c
12 changed files with 45 additions and 16 deletions
|
|
@ -1,27 +1,56 @@
|
|||
# Function calling
|
||||
|
||||
This demo shows how you can use Arch's core function calling capabilites.
|
||||
|
||||
# Starting the demo
|
||||
|
||||
1. Please make sure the [pre-requisites](https://github.com/katanemo/arch/?tab=readme-ov-file#prerequisites) are installed correctly
|
||||
2. Start Arch
|
||||
|
||||
3.
|
||||
```sh
|
||||
3. ```sh
|
||||
sh run_demo.sh
|
||||
```
|
||||
4. Navigate to http://localhost:18080/
|
||||
5. You can type in queries like "how is the weather?"
|
||||
|
||||
# Observability
|
||||
|
||||
Arch gateway publishes stats endpoint at http://localhost:19901/stats. In this demo we are using prometheus to pull stats from arch and we are using grafana to visalize the stats in dashboard. To see grafana dashboard follow instructions below,
|
||||
|
||||
1. Start grafana and prometheus using following command
|
||||
```yaml
|
||||
docker compose --profile monitoring up
|
||||
```
|
||||
1. Navigate to http://localhost:3000/ to open grafana UI (use admin/grafana as credentials)
|
||||
1. From grafana left nav click on dashboards and select "Intelligent Gateway Overview" to view arch gateway stats
|
||||
|
||||
2. Navigate to http://localhost:3000/ to open grafana UI (use admin/grafana as credentials)
|
||||
3. From grafana left nav click on dashboards and select "Intelligent Gateway Overview" to view arch gateway stats
|
||||
|
||||
Here is a sample interaction,
|
||||
<img width="575" alt="image" src="https://github.com/user-attachments/assets/e0929490-3eb2-4130-ae87-a732aea4d059">
|
||||
|
||||
## Tracing
|
||||
|
||||
To see a tracing dashboard follow instructions below,
|
||||
|
||||
1. For Jaeger, you can either use the default run_demo.sh script or run the following command,
|
||||
|
||||
```sh
|
||||
sh run_demo.sh jaeger
|
||||
```
|
||||
|
||||
2. For Logfire, first make sure to add a LOGFIRE_API_KEY to the .env file. You can either use the default run_demo.sh script or run the following command,
|
||||
|
||||
```sh
|
||||
sh run_demo.sh logfire
|
||||
```
|
||||
|
||||
3. For Signoz, you can either use the default run_demo.sh script or run the following command,
|
||||
|
||||
```sh
|
||||
sh run_demo.sh signoz
|
||||
```
|
||||
|
||||
If using Jaeger, navigate to http://localhost:16686/ to open Jaeger UI
|
||||
|
||||
If using Signoz, navigate to http://localhost:3301/ to open Signoz UI
|
||||
|
||||
If using Logfire, navigate to your logfire dashboard that you got the write key from to view the dashboard
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
services:
|
||||
weather_forecast_service:
|
||||
build:
|
||||
context: ../shared/weather_forecast_service
|
||||
context: ./weather_forecast_service
|
||||
environment:
|
||||
- OLTP_HOST=http://jaeger:4317
|
||||
extra_hosts:
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
services:
|
||||
weather_forecast_service:
|
||||
build:
|
||||
context: ../shared/weather_forecast_service
|
||||
context: ./weather_forecast_service
|
||||
environment:
|
||||
- OLTP_HOST=http://otel-collector:4317
|
||||
extra_hosts:
|
||||
|
|
@ -24,12 +24,12 @@ services:
|
|||
|
||||
otel-collector:
|
||||
build:
|
||||
context: ./otel-collector
|
||||
context: ../shared/logfire/
|
||||
ports:
|
||||
- "4317:4317"
|
||||
- "4318:4318"
|
||||
volumes:
|
||||
- ./otel-collector/otel-collector-config.yaml:/etc/otel-collector-config.yaml
|
||||
- ../shared/logfire/otel-collector-config.yaml:/etc/otel-collector-config.yaml
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
|
|
@ -4,7 +4,7 @@ include:
|
|||
services:
|
||||
weather_forecast_service:
|
||||
build:
|
||||
context: ../shared/weather_forecast_service
|
||||
context: ./weather_forecast_service
|
||||
environment:
|
||||
- OLTP_HOST=http://otel-collector:4317
|
||||
extra_hosts:
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
services:
|
||||
weather_forecast_service:
|
||||
build:
|
||||
context: ../shared/weather_forecast_service
|
||||
context: ./weather_forecast_service
|
||||
environment:
|
||||
- OLTP_HOST=http://jaeger:4317
|
||||
extra_hosts:
|
||||
|
|
|
|||
|
|
@ -7,16 +7,16 @@ set -e
|
|||
get_compose_file() {
|
||||
case "$1" in
|
||||
jaeger)
|
||||
echo "docker-compose.jaeger.yml"
|
||||
echo "docker-compose-jaeger.yaml"
|
||||
;;
|
||||
logfire)
|
||||
echo "docker-compose.logfire.yml"
|
||||
echo "docker-compose-logfire.yaml"
|
||||
;;
|
||||
signoz)
|
||||
echo "docker-compose.signoz.yml"
|
||||
echo "docker-compose-signoz.yaml"
|
||||
;;
|
||||
*)
|
||||
echo "docker-compose.jaeger.yml" # Default to Jaeger
|
||||
echo "docker-compose.yaml" # Default to Jaeger
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
|
@ -55,7 +55,7 @@ stop_demo() {
|
|||
echo "Stopping all Docker Compose services..."
|
||||
|
||||
# Stop all services by iterating through all configurations
|
||||
for compose_file in ./*.yml; do
|
||||
for compose_file in ./docker-compose*.yaml; do
|
||||
echo "Stopping services in $compose_file..."
|
||||
docker compose -f "$compose_file" down
|
||||
done
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue