FISHYA commited on
Commit
b8e3b0c
·
verified ·
1 Parent(s): d959de4

Update app/main.py

Browse files
Files changed (1) hide show
  1. app/main.py +31 -0
app/main.py CHANGED
@@ -416,6 +416,37 @@ async def root():
416
  <p>每IP每日请求限制: {MAX_REQUESTS_PER_DAY_PER_IP}</p>
417
  <p>最大重试次数: {len(key_manager.api_keys)}</p>
418
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
419
  </body>
420
  </html>
421
  """
 
416
  <p>每IP每日请求限制: {MAX_REQUESTS_PER_DAY_PER_IP}</p>
417
  <p>最大重试次数: {len(key_manager.api_keys)}</p>
418
  </div>
419
+
420
+ <div class="info-box">
421
+ <h2>📊 使用统计</h2>
422
+ <p>今日调用次数: <span id="todayCalls">加载中...</span></p>
423
+ <p>累计调用次数: <span id="totalCalls">加载中...</span></p>
424
+ <p>今日Token数: <span id="todayTokens">加载中...</span></p>
425
+ <p>累计Token数: <span id="totalTokens">加载中...</span></p>
426
+ <p>最后重置时间: <span id="lastReset">加载中...</span></p>
427
+ </div>
428
+
429
+ <script>
430
+ async function loadStats() {
431
+ try {
432
+ const response = await fetch('/api/stats');
433
+ const data = await response.json();
434
+
435
+ document.getElementById('todayCalls').textContent = data.today_calls;
436
+ document.getElementById('totalCalls').textContent = data.total_calls;
437
+ document.getElementById('todayTokens').textContent = data.today_tokens;
438
+ document.getElementById('totalTokens').textContent = data.total_tokens;
439
+ document.getElementById('lastReset').textContent = new Date(data.last_reset).toLocaleString();
440
+ } catch (error) {
441
+ console.error('加载统计信息失败:', error);
442
+ }
443
+ }
444
+
445
+ // 初始加载
446
+ loadStats();
447
+ // 每10秒刷新一次
448
+ setInterval(loadStats, 10000);
449
+ </script>
450
  </body>
451
  </html>
452
  """