GET
/api/metrics

Prometheus Metrics API

Standard Prometheus text exposition endpoint exposing real-time HTTP throughput, query latency histograms, and system memory metrics.

Scraping the Endpoint

Prometheus or OpenTelemetry collectors can scrape this endpoint periodically:

bash
curl -X GET http://localhost:3000/api/metrics

Metrics Authentication (Optional)

In production, you can lock down the endpoint by configuring METRICS_AUTH_TOKEN in your environment variables:

bash
curl -X GET http://localhost:3000/api/metrics \
  -H "Authorization: Bearer YOUR_METRICS_TOKEN"

Exported Metric Catalog

# HELP orcha_http_requests_total Total number of HTTP requests processed
# TYPE orcha_http_requests_total counter
orcha_http_requests_total{method="POST",route="/api/chat",status="200"} 1420
# HELP orcha_http_request_duration_seconds Latency histogram in seconds
# TYPE orcha_http_request_duration_seconds histogram
orcha_http_request_duration_seconds_bucket{le="0.05",route="/api/chat"} 890
orcha_http_request_duration_seconds_bucket{le="0.25",route="/api/chat"} 1350
orcha_http_request_duration_seconds_bucket{le="+Inf",route="/api/chat"} 1420

Sample PromQL Queries

Calculate 95th percentile query latency:
histogram_quantile(0.95, sum(rate(orcha_http_request_duration_seconds_bucket[5m])) by (le))
Calculate error rate percentage:
sum(rate(orcha_http_requests_total{status=~"5.."}[5m])) / sum(rate(orcha_http_requests_total[5m])) * 100