mirror of
https://github.com/katanemo/plano.git
synced 2026-05-02 12:22:43 +02:00
Add Prometheus metrics endpoint and Grafana dashboard for brightstaff (#904)
Some checks are pending
CI / pre-commit (push) Waiting to run
CI / plano-tools-tests (push) Waiting to run
CI / native-smoke-test (push) Waiting to run
CI / docker-build (push) Waiting to run
CI / validate-config (push) Waiting to run
CI / security-scan (push) Blocked by required conditions
CI / test-prompt-gateway (push) Blocked by required conditions
CI / test-model-alias-routing (push) Blocked by required conditions
CI / test-responses-api-with-state (push) Blocked by required conditions
CI / e2e-plano-tests (3.10) (push) Blocked by required conditions
CI / e2e-plano-tests (3.11) (push) Blocked by required conditions
CI / e2e-plano-tests (3.12) (push) Blocked by required conditions
CI / e2e-plano-tests (3.13) (push) Blocked by required conditions
CI / e2e-plano-tests (3.14) (push) Blocked by required conditions
CI / e2e-demo-preference (push) Blocked by required conditions
CI / e2e-demo-currency (push) Blocked by required conditions
Publish docker image (latest) / build-arm64 (push) Waiting to run
Publish docker image (latest) / build-amd64 (push) Waiting to run
Publish docker image (latest) / create-manifest (push) Blocked by required conditions
Build and Deploy Documentation / build (push) Waiting to run
Some checks are pending
CI / pre-commit (push) Waiting to run
CI / plano-tools-tests (push) Waiting to run
CI / native-smoke-test (push) Waiting to run
CI / docker-build (push) Waiting to run
CI / validate-config (push) Waiting to run
CI / security-scan (push) Blocked by required conditions
CI / test-prompt-gateway (push) Blocked by required conditions
CI / test-model-alias-routing (push) Blocked by required conditions
CI / test-responses-api-with-state (push) Blocked by required conditions
CI / e2e-plano-tests (3.10) (push) Blocked by required conditions
CI / e2e-plano-tests (3.11) (push) Blocked by required conditions
CI / e2e-plano-tests (3.12) (push) Blocked by required conditions
CI / e2e-plano-tests (3.13) (push) Blocked by required conditions
CI / e2e-plano-tests (3.14) (push) Blocked by required conditions
CI / e2e-demo-preference (push) Blocked by required conditions
CI / e2e-demo-currency (push) Blocked by required conditions
Publish docker image (latest) / build-arm64 (push) Waiting to run
Publish docker image (latest) / build-amd64 (push) Waiting to run
Publish docker image (latest) / create-manifest (push) Blocked by required conditions
Build and Deploy Documentation / build (push) Waiting to run
This commit is contained in:
parent
9812540602
commit
22f332f62d
17 changed files with 1682 additions and 6 deletions
|
|
@ -75,3 +75,54 @@ are some sample configuration files for both, respectively.
|
|||
isDefault: true
|
||||
access: proxy
|
||||
editable: true
|
||||
|
||||
Brightstaff metrics
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
In addition to Envoy's stats on ``:9901``, the brightstaff dataplane
|
||||
process exposes its own Prometheus endpoint on ``0.0.0.0:9092`` (override
|
||||
with ``METRICS_BIND_ADDRESS``). It publishes:
|
||||
|
||||
* HTTP RED — ``brightstaff_http_requests_total``,
|
||||
``brightstaff_http_request_duration_seconds``,
|
||||
``brightstaff_http_in_flight_requests`` (labels: ``handler``, ``method``,
|
||||
``status_class``).
|
||||
* LLM upstream — ``brightstaff_llm_upstream_requests_total``,
|
||||
``brightstaff_llm_upstream_duration_seconds``,
|
||||
``brightstaff_llm_time_to_first_token_seconds``,
|
||||
``brightstaff_llm_tokens_total`` (labels: ``provider``, ``model``,
|
||||
``error_class``, ``kind``).
|
||||
* Routing — ``brightstaff_router_decisions_total``,
|
||||
``brightstaff_router_decision_duration_seconds``,
|
||||
``brightstaff_routing_service_requests_total``,
|
||||
``brightstaff_session_cache_events_total``.
|
||||
* Process & build — ``process_resident_memory_bytes``,
|
||||
``process_cpu_seconds_total``, ``brightstaff_build_info``.
|
||||
|
||||
A self-contained Prometheus + Grafana stack is shipped under
|
||||
``config/grafana/``. With Plano already running on the host, bring it up
|
||||
with one command:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cd config/grafana
|
||||
docker compose up -d
|
||||
open http://localhost:3000 # admin / admin (anonymous viewer also enabled)
|
||||
|
||||
Grafana auto-loads the Prometheus datasource and the brightstaff
|
||||
dashboard (look under the *Plano* folder). Prometheus scrapes the host's
|
||||
``:9092`` and ``:9901`` via ``host.docker.internal``.
|
||||
|
||||
Files:
|
||||
|
||||
* ``config/grafana/docker-compose.yaml`` — one-command Prom + Grafana
|
||||
stack with provisioning.
|
||||
* ``config/grafana/prometheus_scrape.yaml`` — complete Prometheus config
|
||||
with ``envoy`` and ``brightstaff`` scrape jobs (mounted by the
|
||||
compose).
|
||||
* ``config/grafana/brightstaff_dashboard.json`` — 19-panel dashboard
|
||||
across HTTP RED, LLM upstream, Routing service, and Process & Envoy
|
||||
link rows. Auto-provisioned by the compose; can also be imported by
|
||||
hand via *Dashboards → New → Import*.
|
||||
* ``config/grafana/provisioning/`` — Grafana provisioning files for the
|
||||
datasource and dashboard provider.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue