From 8cb78ad931ae480f2e9c3d40c312ff3078c3587f Mon Sep 17 00:00:00 2001 From: Will Miao <13051207myq@gmail.com> Date: Tue, 22 Apr 2025 09:39:00 +0800 Subject: [PATCH] feat: Add route for retrieving current usage statistics --- py/routes/usage_stats_routes.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/py/routes/usage_stats_routes.py b/py/routes/usage_stats_routes.py index 0d162681..8a90e6c5 100644 --- a/py/routes/usage_stats_routes.py +++ b/py/routes/usage_stats_routes.py @@ -11,6 +11,7 @@ class UsageStatsRoutes: def setup_routes(app): """Register usage stats routes""" app.router.add_post('/loras/api/update-usage-stats', UsageStatsRoutes.update_usage_stats) + app.router.add_get('/loras/api/get-usage-stats', UsageStatsRoutes.get_usage_stats) @staticmethod async def update_usage_stats(request): @@ -47,3 +48,22 @@ class UsageStatsRoutes: 'success': False, 'error': str(e) }, status=500) + + @staticmethod + async def get_usage_stats(request): + """Get current usage statistics""" + try: + usage_stats = UsageStats() + stats = await usage_stats.get_stats() + + return web.json_response({ + 'success': True, + 'data': stats + }) + + except Exception as e: + logger.error(f"Failed to get usage stats: {e}", exc_info=True) + return web.json_response({ + 'success': False, + 'error': str(e) + }, status=500)