diff --git a/s2a_service.py b/s2a_service.py index c4bf43b..a37683b 100644 --- a/s2a_service.py +++ b/s2a_service.py @@ -992,15 +992,17 @@ def format_keys_usage(keys: List[Dict[str, Any]], period_text: str = "今日") - return f"{ms / 1000:.2f}s" return f"{ms:.0f}ms" - lines = [f"🔑 API 密钥用量 ({period_text})", ""] + # 按请求数排序(降序) + sorted_keys = sorted(keys, key=lambda k: k.get("usage", {}).get("total_requests", 0), reverse=True) + + lines = [f"◈ API 密钥用量 ({period_text})", ""] total_requests = 0 total_tokens = 0 total_cost = 0 - for key in keys: + for i, key in enumerate(sorted_keys, 1): name = key.get("name", "未命名") - key_str = key.get("key", "") status = key.get("status", "active") group_name = key.get("group_name", "默认") @@ -1017,28 +1019,23 @@ def format_keys_usage(keys: List[Dict[str, Any]], period_text: str = "今日") - total_tokens += tokens total_cost += cost - # 状态图标 - status_icon = "✅" if status == "active" else "⏸️" + # 排名序号 + rank = f"#{i}" - # 密钥脱敏显示 - if len(key_str) > 12: - key_display = f"{key_str[:6]}...{key_str[-4:]}" - else: - key_display = key_str[:8] + "..." if key_str else "N/A" - - lines.append(f"{status_icon} {name} ({group_name})") - lines.append(f" 请求: {requests:,} | 耗时: {fmt_duration(avg_duration)}") - lines.append(f" Token: {fmt_tokens(tokens)} (入:{fmt_tokens(input_tokens)} 出:{fmt_tokens(output_tokens)})") + lines.append(f"{rank} {name}") + lines.append(f" ▸ {requests:,} 请求 · {fmt_duration(avg_duration)}") + lines.append(f" ▸ {fmt_tokens(tokens)} (↓{fmt_tokens(input_tokens)} ↑{fmt_tokens(output_tokens)})") if cache_tokens > 0: - lines.append(f" 缓存: {fmt_tokens(cache_tokens)}") - lines.append(f" 费用: {fmt_cost(cost)}") + lines.append(f" ▸ 缓存 {fmt_tokens(cache_tokens)}") + lines.append(f" ▸ {fmt_cost(cost)}") lines.append("") # 汇总 - lines.append(f"📊 {period_text}汇总") - lines.append(f" 密钥数: {len(keys)}") - lines.append(f" 总请求: {total_requests:,}") - lines.append(f" 总 Token: {fmt_tokens(total_tokens)}") - lines.append(f" 总费用: {fmt_cost(total_cost)}") + lines.append("────────────────────") + lines.append(f"◇ {period_text}汇总") + lines.append(f" 密钥: {len(keys)} 个") + lines.append(f" 请求: {total_requests:,}") + lines.append(f" Token: {fmt_tokens(total_tokens)}") + lines.append(f" 费用: {fmt_cost(total_cost)}") return "\n".join(lines)