钥匙的持有者不一定是花钱的人:一次计费凭证排查的真相
来源:dev.to — 2026-08-14 — 6 min
📋 概述
作者跑着一台机器上的 AI agent 群,某月云账单开始爬升。他凭「最近、常用、时间吻合」怀疑日常烧 Gemini 订阅的 CLI 工具,但审计发现它的 92 条会话日志全走 OAuth 消费者认证、billing-project 字段为空,5,409 次模型调用全部路由到免费层端点,且与计费项目的日请求量相关性近乎为零(Pearson r=0.089)。真正花钱的是藏在 shell profile 顶部的全局导出的 Gemini API key——被图像生成服务器和一个跨厂商模型验证步骤读到,后者默认模型是付费预览层。作者由此提炼出结构化事实:密钥的所有权与被计费是两个不同的关系,shell 导出等继承边界让「谁在用它」成为原理上无法回答的问题。
🔑 核心要点
- 密钥的「所有者」与「被计费者」是两种关系,shell profile 常把两者悄悄合并。
- 被冤枉的 CLI 工具证据确凿:92 条日志全 OAuth、billing 字段空、5,409 次调用全走免费层。
- 计费项目日流量与工具日调用量相关性几乎为零(r=0.089),完美不在场证明。
- 真凶是全局导出的 Gemini key,被图像服务与一个默认付费预览模型的验证步骤读到。
- 账单按项目/服务/SKU 分项,永不按进程分项——一旦密钥跨过继承边界,问题原理上无解。
💡 金句
同会话、同天数、一起上升——教科书级的共因相关,看起来像因果,直到你按认证方式与端点而非「那天在干嘛」来分离。
👍 0
👎 0
← 返回 dev.to 首页