litellm/tests/unit/proxy/telemetry
devin-ai-integration[bot] 925c0a9586
feat(telemetry): add the Admin UI telemetry settings page and gated page navigation events (#45494)
* feat(telemetry): count Admin UI page views and tab clicks through the proxy

* fix(ui): share one telemetry settings save across both tabs so a second toggle waits for the first

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* fix(telemetry): let every dashboard role reach the UI event routes

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* test(proxy): fail with the denial detail when a dashboard role cannot reach UI event routes

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* fix(telemetry): document POST /telemetry/ui_events with a description and a 200 response schema

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* test(proxy): keep the test-quality reason on the line pytest's checker reads

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* feat(ui): pick the telemetry destination on the Telemetry page and warn when none is chosen

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* test(ui): send the destination along with groups in the telemetry settings hook test

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* feat(ui): add a top-level telemetry switch and gate turning telemetry on behind an enterprise modal

The page can only turn telemetry off. Turning it on from the switch, a group
or a first destination opens a modal: enterprise proxies are told to contact
their LiteLLM enterprise representative, others that telemetry is an
enterprise-only feature. Group switches and the destination stay visible but
disabled while telemetry is off.

---------

Co-authored-by: nate <nate@berri.ai>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-13 20:12:11 -07:00
..
__init__.py feat(telemetry): record proxy requests and provider attempts into the telemetry sink (#45489) 2026-10-13 18:46:06 -07:00
fake_database.py feat(telemetry): keep reports in a local table with a persistent instance id and an admin export route (#45490) 2026-10-13 18:58:46 -07:00
test_attempt_logger.py feat(telemetry): record proxy requests and provider attempts into the telemetry sink (#45489) 2026-10-13 18:46:06 -07:00
test_blocks.py feat(telemetry): record proxy requests and provider attempts into the telemetry sink (#45489) 2026-10-13 18:46:06 -07:00
test_endpoints.py feat(telemetry): add the Admin UI telemetry settings page and gated page navigation events (#45494) 2026-10-13 20:12:11 -07:00
test_middleware.py feat(telemetry): record proxy requests and provider attempts into the telemetry sink (#45489) 2026-10-13 18:46:06 -07:00
test_runtime.py feat(telemetry): keep reports in a local table with a persistent instance id and an admin export route (#45490) 2026-10-13 18:58:46 -07:00
test_settings.py feat(telemetry): keep reports in a local table with a persistent instance id and an admin export route (#45490) 2026-10-13 18:58:46 -07:00
test_store.py feat(telemetry): keep reports in a local table with a persistent instance id and an admin export route (#45490) 2026-10-13 18:58:46 -07:00