Skip to content

Commit 60e6279

Browse files
committed
Add new Grafana dashboards for provider performance, request pipeline, and virtual key analytics
- Created `grafana-provider-performance-dashboard.json` to monitor LLM provider performance metrics including total requests, error rates, response times, and costs. - Created `grafana-request-pipeline-dashboard.json` to visualize HTTP request metrics such as request rates, latencies, error rates, and rate limiting events. - Created `grafana-virtual-key-analytics-dashboard.json` to analyze virtual key usage, including active keys, total spend, budget utilization, and detailed key information. - Updated `grafana-datasources.yml` to include unique identifiers for Prometheus and PostgreSQL data sources.
1 parent 0c800d5 commit 60e6279

9 files changed

Lines changed: 2483 additions & 9 deletions

docker-compose.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,36 @@ services:
257257
retries: 3
258258
start_period: 40s
259259

260+
# Redis Exporter for Prometheus metrics
261+
# Note: No healthcheck - these are minimal scratch images without shell/wget
262+
# Prometheus scrape failures will indicate if the exporter is down
263+
redis-exporter:
264+
image: oliver006/redis_exporter:latest
265+
restart: always
266+
environment:
267+
REDIS_ADDR: "redis://redis:6379"
268+
ports:
269+
- "9121:9121"
270+
depends_on:
271+
redis:
272+
condition: service_healthy
273+
274+
# RabbitMQ Exporter for Prometheus metrics
275+
rabbitmq-exporter:
276+
image: kbudde/rabbitmq-exporter:latest
277+
restart: always
278+
environment:
279+
RABBIT_URL: "http://rabbitmq:15672"
280+
RABBIT_USER: conduit
281+
RABBIT_PASSWORD: conduitpass
282+
PUBLISH_PORT: "9419"
283+
OUTPUT_FORMAT: "prometheus"
284+
ports:
285+
- "9419:9419"
286+
depends_on:
287+
rabbitmq:
288+
condition: service_healthy
289+
260290
# Prometheus for metrics collection
261291
prometheus:
262292
image: prom/prometheus:latest
@@ -288,11 +318,20 @@ services:
288318
- GF_SECURITY_ADMIN_PASSWORD=conduitadmin
289319
- GF_INSTALL_PLUGINS=
290320
- GF_USERS_ALLOW_SIGN_UP=false
321+
# Enable unified alerting
322+
- GF_UNIFIED_ALERTING_ENABLED=true
323+
- GF_ALERTING_ENABLED=false
291324
volumes:
292325
- grafana-data:/var/lib/grafana
293326
- ./grafana/provisioning/datasources/grafana-datasources.yml:/etc/grafana/provisioning/datasources/datasources.yml:ro
294327
- ./grafana/provisioning/dashboards/grafana-dashboard-provider.yml:/etc/grafana/provisioning/dashboards/provider.yml:ro
295328
- ./grafana/provisioning/dashboards/grafana-conduit-overview-dashboard.json:/var/lib/grafana/dashboards/conduit-overview.json:ro
329+
- ./grafana/provisioning/dashboards/grafana-provider-performance-dashboard.json:/var/lib/grafana/dashboards/provider-performance.json:ro
330+
- ./grafana/provisioning/dashboards/grafana-virtual-key-analytics-dashboard.json:/var/lib/grafana/dashboards/virtual-key-analytics.json:ro
331+
- ./grafana/provisioning/dashboards/grafana-request-pipeline-dashboard.json:/var/lib/grafana/dashboards/request-pipeline.json:ro
332+
- ./grafana/provisioning/dashboards/grafana-infrastructure-dashboard.json:/var/lib/grafana/dashboards/infrastructure.json:ro
333+
# Alerting rules - can be enabled once basic setup is verified
334+
# - ./grafana/provisioning/alerting/alerting-rules.yml:/etc/grafana/provisioning/alerting/alerting-rules.yml:ro
296335
depends_on:
297336
prometheus:
298337
condition: service_healthy

grafana/prometheus.yml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,20 @@ scrape_configs:
2828
static_configs:
2929
- targets: ['localhost:9090']
3030
labels:
31-
service: 'prometheus'
31+
service: 'prometheus'
32+
33+
# Scrape Redis Exporter metrics
34+
- job_name: 'redis'
35+
static_configs:
36+
- targets: ['redis-exporter:9121']
37+
labels:
38+
service: 'redis'
39+
scrape_interval: 10s
40+
41+
# Scrape RabbitMQ Exporter metrics
42+
- job_name: 'rabbitmq'
43+
static_configs:
44+
- targets: ['rabbitmq-exporter:9419']
45+
labels:
46+
service: 'rabbitmq'
47+
scrape_interval: 10s

0 commit comments

Comments
 (0)