feat: analytics backend API with chat_message table

- Add chat_message table for message-level analytics with usage JSON field
- Add migration to backfill from existing chats
- Add /analytics endpoints: summary, models, users, daily
- Support hourly/daily granularity for time-series data
- Fill missing days/hours in date range
This commit is contained in:
Tim Baek
2026-02-01 07:04:13 +04:00
parent ee5fd1246c
commit 599cd2eeeb
5 changed files with 803 additions and 0 deletions

View File

@@ -68,6 +68,7 @@ from open_webui.socket.main import (
get_models_in_use,
)
from open_webui.routers import (
analytics,
audio,
images,
ollama,
@@ -1455,6 +1456,9 @@ app.include_router(functions.router, prefix="/api/v1/functions", tags=["function
app.include_router(
evaluations.router, prefix="/api/v1/evaluations", tags=["evaluations"]
)
app.include_router(
analytics.router, prefix="/api/v1/analytics", tags=["analytics"]
)
app.include_router(utils.router, prefix="/api/v1/utils", tags=["utils"])
# SCIM 2.0 API for identity management