📊 用于记录和可视化 Cloudflare Workers 使用额度的监控面板。
- 📈 实时用量监控 - 自动获取 Cloudflare Workers 调用数据并可视化展示
- 📊 额度进度条 - 直观显示今日请求用量占比(基于免费版 100,000 次/天限制)
- 🕐 多时间范围 - 支持查看最近 24 小时、7 天、30 天的统计数据
- 📉 请求趋势图表 - 使用 ECharts 展示请求数和错误数趋势
- 🔄 自动更新 - 通过 GitHub Actions 每 20 分钟自动同步数据
- 🌐 GitHub Pages 部署 - 零成本托管,自动部署到 GitHub Pages
访问在线演示:workers-usage.265209.xyz
点击右上角的 Fork 按钮将仓库复制到你的账户下。
在你 Fork 的仓库中,进入 Settings → Secrets and variables → Actions,添加以下两个 Repository Secrets:
| Secret 名称 | 说明 |
|---|---|
CF_ACCOUNT_ID |
Cloudflare 账户 ID,可在 Cloudflare Dashboard 右侧边栏找到 |
CF_API_TOKEN |
Cloudflare API Token,需要 Account Analytics: Read 权限 |
- 登录 Cloudflare Dashboard
- 进入 My Profile → API Tokens
- 点击 Create Token
- 使用 Custom token 模板
- 添加以下权限:
- Account → Account Analytics → Read
- 完成创建并复制 Token
- 进入仓库的 Settings → Pages
- 在 Source 下选择
gh-pages分支 - 保存设置
- 进入 Actions 标签页
- 选择 Update Worker Stats 工作流
- 点击 Run workflow 手动触发
cf-workers-usage/
├── . github/
│ └── workflows/
│ └── update-stats.yml # GitHub Actions 工作流配置
├── public/
│ └── index.html # 前端监控面板页面
├── scripts/
│ └── fetch-data.js # 数据获取脚本
└── package.json
- 数据获取 -
fetch-data.js通过 Cloudflare GraphQL API 获取过去 30 天的 Workers 调用统计 - 自动更新 - GitHub Actions 每 20 分钟执行一次数据同步
- 数据存储 - 获取的数据保存为
data.json文件 - 页面展示 -
index.html加载 JSON 数据并使用 ECharts 进行可视化 - 自动部署 - 使用
peaceiris/actions-gh-pages自动部署到 GitHub Pages
编辑 .github/workflows/update-stats. yml 中的 cron 表达式:
schedule:
- cron: '*/20 * * * *' # 每 20 分钟运行一次在 .github/workflows/update-stats. yml 中修改 cname 参数:
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
cname: your-custom-domain.com # 修改为你的域名在 public/index.html 中找到并修改:
const DAILY_LIMIT = 100000; // 修改为你的计划额度ISC License
欢迎提交 Issues 和 Pull Requests!