用 Claude Code 串接 Cloudflare Web Analytics API:自動產生每日流量報告
用 Claude Code 串接 Cloudflare Web Analytics API:自動產生每日流量報告 — 編譯摘要
濃縮
核心結論:
- Cloudflare Web Analytics 的 GraphQL API 有三個不直覺的坑:wrangler OAuth token 權限不足、siteTag 與 beacon token 不同、欄位名稱不直覺(如
requestPath而非path)。 /loop排程只存在於當前 session,不適合每日任務;cron job 才是持久化排程的正確方案。- 從 API 取得數據到 cron job 產出第一份報告,整個過程約一小時,大部分時間花在摸索 API 結構。
關鍵證據:
- 自動注入模式下,siteTag 與 Dashboard 的 beacon token 不同,需用
requestHost反查。 - 效能數據使用不同的 dataset(
rumPerformanceEventsAdaptiveGroups),單位是微秒。 - 報告格式選 Markdown,因為終端機、GitHub、筆記軟體都能直接閱讀。
質疑
結論 1:API 的三個坑
- 前提假設:使用自動注入模式。手動注入 JS snippet 的用戶可能不會遇到 siteTag 問題。
- 換技術棧:其他分析工具(Google Analytics、Plausible)的 API 坑完全不同,經驗不可直接移植。
- 邊界條件:Cloudflare 更新 API 後,這些坑可能已被修復或產生新的坑。
結論 2:cron 優於 /loop
- 前提假設:任務需要在 Claude Code 關閉後仍持續執行。如果是開發期間的臨時監控,/loop 可能更方便。
- 反例:雲端排程(如 GitHub Actions 的 cron trigger)可能比本機 cron 更可靠(不依賴電腦開機)。
對標
- ETL 流程(Extract-Transform-Load):從 API 取數據 → 用 jq 轉換 → 輸出 Markdown,是一個微型的 ETL pipeline。
- 日報文化:日本企業的「日報」制度同樣強調每日回顧數據,差別在於自動化取代了人工整理。
- 監控告警系統:從 Prometheus + Grafana 到簡單的 cron + Markdown,是監控系統從重量級到輕量級的光譜。
關聯概念
- [[自動化報告流程]]
- [[API 串接踩坑模式]]
- [[Claude Code 排程機制]]