feat: enhance usage analytics dashboard (#666)

- visualize input, output, and cache token segments in usage charts
- add usage period selector for 7d, 30d, 90d, and 365d
- guard usage stats against stale overlapping period requests
- normalize blank model usage into unknown buckets
- add client and server coverage for usage analytics behavior
This commit is contained in:
Zhicheng Han
2026-05-13 01:41:49 +02:00
committed by GitHub
parent 57cdf87bef
commit c2068302c3
18 changed files with 683 additions and 113 deletions
+1 -1
View File
@@ -751,7 +751,7 @@ jobTriggered: 'Job ausgelost',
estimatedCost: 'Gesch. Kosten',
cacheHitRate: 'Cache-Trefferquote',
modelBreakdown: 'Modellaufschluesselung',
dailyTrend: 'Tagliche Nutzung (letzte 30 Tage)',
dailyTrend: 'Tagliche Nutzung',
date: 'Datum',
tokens: 'Tokens',
cache: 'Cache',
+1 -1
View File
@@ -973,7 +973,7 @@ export default {
estimatedCost: 'Est. Cost',
cacheHitRate: 'Cache Hit Rate',
modelBreakdown: 'Model Breakdown',
dailyTrend: 'Daily Usage (Last 30 Days)',
dailyTrend: 'Daily Usage',
date: 'Date',
tokens: 'Tokens',
cache: 'Cache',
+1 -1
View File
@@ -747,7 +747,7 @@ jobTriggered: 'Job ejecutado',
estimatedCost: 'Costo est.',
cacheHitRate: 'Tasa de acierto de cache',
modelBreakdown: 'Desglose por modelo',
dailyTrend: 'Uso diario (ultimos 30 dias)',
dailyTrend: 'Uso diario',
date: 'Fecha',
tokens: 'Tokens',
cache: 'Caché',
+1 -1
View File
@@ -747,7 +747,7 @@ jobTriggered: 'Job declenche',
estimatedCost: 'Cout est.',
cacheHitRate: 'Taux de succes du cache',
modelBreakdown: 'Repartition par modele',
dailyTrend: 'Utilisation quotidienne (30 derniers jours)',
dailyTrend: 'Utilisation quotidienne',
date: 'Date',
tokens: 'Jetons',
cache: 'Cache',
+1 -1
View File
@@ -747,7 +747,7 @@ export default {
estimatedCost: '推定コスト',
cacheHitRate: 'キャッシュヒット率',
modelBreakdown: 'モデル別内訳',
dailyTrend: '日別使用量(過去30日間)',
dailyTrend: '日別使用量',
date: '日付',
tokens: 'トークン',
cache: 'キャッシュ',
+1 -1
View File
@@ -747,7 +747,7 @@ export default {
estimatedCost: '예상 비용',
cacheHitRate: '캐시 적중률',
modelBreakdown: '모델별 분포',
dailyTrend: '일별 사용량 (최근 30일)',
dailyTrend: '일별 사용량',
date: '날짜',
tokens: '토큰',
cache: '캐시',
+1 -1
View File
@@ -747,7 +747,7 @@ jobTriggered: 'Job acionado',
estimatedCost: 'Custo est.',
cacheHitRate: 'Taxa de acerto de cache',
modelBreakdown: 'Detalhamento por modelo',
dailyTrend: 'Uso diario (ultimos 30 dias)',
dailyTrend: 'Uso diario',
date: 'Data',
tokens: 'Tokens',
cache: 'Cache',
+1 -1
View File
@@ -975,7 +975,7 @@ export default {
estimatedCost: '預估費用',
cacheHitRate: '快取命中率',
modelBreakdown: '模型分布',
dailyTrend: '每日用量(近 30 天)',
dailyTrend: '每日用量',
date: '日期',
tokens: 'Token',
cache: '快取',
+1 -1
View File
@@ -975,7 +975,7 @@ export default {
estimatedCost: '预估费用',
cacheHitRate: '缓存命中率',
modelBreakdown: '模型分布',
dailyTrend: '每日用量(近 30 天)',
dailyTrend: '每日用量',
date: '日期',
tokens: 'Token',
cache: '缓存',