Azure 云账单管理
通过 quokka 的
azure-billing技能实现 Azure 全球云订阅的自动化费用查询、过滤与可视化报表。
概述
Azure 云账单管理是 Quokka 的核心运维能力之一。通过专用的 azure-billing 技能(而非底层 az billing CLI),定期查询近 15 天的 Azure 费用数据,按资源和日期聚合后生成结构化报表。支持文本报表和 ECharts 可视化图表两种输出形式。
查询机制
数据源
- Azure Cost Management API(通过 Quokka 的
azure-billing技能封装) - 订阅 ID:
6706af... - 涵盖全球云 (Azure Global) 所有资源组
过滤规则
- 仅显示日总花费中 单项 > $5.00 的资源
- 计费明细(Meter)低于 $1.00 自动折叠隐藏
- 适度压缩文本长度,确保能在 Mattermost 单条消息内发送
输出格式
- 文本报表:按日期倒序,每日列出总计金额和主要资源开销
- ECharts 图表:堆叠柱状图,展示每天的消耗趋势和资源排名 Top 7(其余为 Other)
- JSON 快照:设计了全量 JSON 格式用于数据库存储
费用结构(典型数据)
主要资源成本
| 资源 | 类型 | 日均费用 | 说明 |
|---|---|---|---|
| clawedbot | VM (D4ads_v6) | ~$7.34 | 最大单体 VM 成本 |
| claw-runtime | VM (D2s_v3) | ~$3.43 | Docker 业务集群 |
| eagle | VM (D2ads_v5) | ~$2.83 | 升级后 |
| resley-sweden-ext | AI Services | 31/天 | GPT-5.2/5.4 API 调用 |
| resley-east-us-2-resource | AI Services | 183/天 | GPT-5.4 大量调用时飙升 |
异常费用案例
- 2026-03-15:日花费 183)
- 2026-03-16:日花费 $123.57
- 2026-03-17:openclaws.co.uk 域名续费 $11.99
- 2026-04-06:日花费 18.94,Azure 结算延迟后更新)— resley-sweden-ext 消耗 26.60 + output 5.81。通过 Quokka 的 azure-billing 技能在 04-07 查询确认
- 正常日:约 40/天(主要是 VM 基座成本)
JSON 快照格式
为实现定期数据入库,设计了标准化 JSON 格式:
{
"snapshot_time": "ISO 8601",
"collector": "quokka",
"servers": [{
"name": "服务器名",
"ip": "公网 IP",
"region": "区域",
"cloud": "azure-global / azure-china",
"os": "Ubuntu 24.04",
"cpu_cores": 2,
"memory_total_mb": 7987,
"memory_used_mb": 1228,
"disk_total_gb": 61,
"disk_used_gb": 4.9,
"disk_usage_pct": 8,
"role": "角色描述",
"ssh_reachable": true,
"services": [{"name": "服务名", "type": "docker/systemd", "status": "running"}],
"alerts": [{"level": "critical", "type": "disk_full", "message": "描述"}]
}]
}已知问题
- Quokka 有时忘记使用
azure-billing技能,转而尝试az billingCLI(权限不足会报 Forbidden) - 需要提醒使用专用技能而非底层 CLI
- 超长报表会超出 Mattermost 单条消息字数上限,需分批发送
15 天账单趋势分析(2026-04-08)
通过 Quokka 的 azure-billing 技能拉取了 2026-03-24 至 2026-04-07 共 15 天的完整账单数据:
| 日期 | 日花费 | 主要开销 |
|---|---|---|
| 04-07 | $53.00 | resley-sweden-ext $31.27(GPT-5.4 input/output) |
| 04-06 | $85.11 | resley-sweden-ext 7.34 |
| 04-05 | $50.55 | resley-sweden-ext 7.45 |
| 04-04 | $47.47 | resley-sweden-ext 3.60) |
| 04-03 | $42.88 | clawedbot VM 5.56 |
| 04-02 | $79.28 | east-us-2 7.34 |
| 04-01 | $64.76 | east-us-2 7.34 |
| 03-31 | $90.83 | east-us-2 30.95) |
| 03-30 | $56.51 | east-us-2 7.34 |
| 03-29 | $39.67 | clawedbot VM $7.34(低活动日) |
| 03-28 | $38.36 | clawedbot VM $7.34 |
| 03-27 | $31.72 | clawedbot VM $7.34 |
| 03-26 | $37.43 | clawedbot VM $7.33 |
| 03-25 | $36.94 | clawedbot VM $7.34 |
| 03-24 | $36.40 | clawedbot VM $7.35 |
趋势分析
- 基座成本:clawedbot VM (D4ads_v6) 日均 ~$7.34,占低活动日花费的 ~20%
- AI 模型切换影响明显:03-31~04-02 期间 GPT-4.1 大量调用推高 east-us-2 资源组费用($27-53/天),04-04 起切换到 GPT-5.2/5.4 后该资源组费用大幅下降
- 高峰日:03-31 (85.11)、04-02 ($79.28),均由 AI 服务调用驱动
- 低谷日:03-27~03-29 ($31-39),仅有 VM 基座成本,几乎无 AI 调用
- 15 日均值:约 $52.71/天