Cloudflare 多账号请求分析面板,支持按账号、区域、域名、子域名、Worker 服务名和时间范围筛选数据,查看 HTTP 请求、Workers / Pages 用量、流量趋势、Top IP / Top Host,并通过 Workers AI 分析服务入口的异常风险。
- 多账号请求汇总与单账号查看
- 按区域、域名、子域名、Worker 服务名筛选
- HTTP 请求数、边缘响应流量、Top IP、Top Host
- Workers / Pages 免费额度进度
- 可输出兼容edgetunnel的统计API,格式
/usage.json - 1h / 6h / 12h / 24h 趋势图
- Worker 服务名项目级请求统计
- AI 分析当前筛选范围的异常风险
- 管理员登录与后台账号管理
- 未登录隐私展示控制
src/worker.js # 核心业务逻辑
functions/[[path]].js # Cloudflare Pages Functions 入口
public/.gitkeep # Pages 静态输出目录占位
wrangler.example.toml # Wrangler 配置示例,不会被 Pages 自动读取| 类型 | 名称 | 必填 | 说明 |
|---|---|---|---|
| KV 绑定 | KV |
是 | 保存账号配置和隐私设置 |
| Workers AI 绑定 | AI |
是 | 调用 Workers AI 进行风险分析 |
| 环境变量 | ADMIN_USER |
否 | 管理员用户名,默认 admin |
| 环境变量 | ADMIN_PASSWORD |
是 | 管理员密码 |
| 环境变量 | AI_MODEL |
否 | AI 模型名称,默认 @cf/openai/gpt-oss-20b |
先在 GitHub 上 Fork 本仓库到自己的账号下,然后在 Cloudflare Dashboard 中进入:
存储和数据库-> Workers KV -> Create Instance/创建实例 -> 命名空间名称:cf-request-analytics-panel -> 创建命名空间名称你可以设置直接喜欢的,但要在接下来的步骤里,选择相对于的Workers KV,完成后:
计算 -> Workers 和 Pages -> 创建应用程序 -> 想要部署 Pages?开始使用 -> 导入现有 Git 存储库 -> 你Fork的仓库Pages 构建配置建议如下:
| 项目 | 值 |
|---|---|
| 项目名称 | cf-request-analytics-panel 或自定义 |
| 生产分支 | main |
| 框架预设 | None / 无 |
| 构建命令 | 留空 |
| 构建输出目录 | 留空或 / |
| 根目录(高级) | 留空 |
| 环境变量(高级) | 留空 |
仓库默认不包含 wrangler.toml,避免 Cloudflare Pages 将绑定切换为配置文件管理。请按下方步骤在 Pages Dashboard 中绑定 KV、AI 和环境变量。
无需等待部署,点击下方继续处理项目,确认取消部署,来到项目主页:
设置 -> 绑定 -> 添加 KV 命名空间 -> 变量名称输入:KV -> KV 命名空间:cf-request-analytics-panel -> 保存如果你在第一步自定义了名称,这里的KV 命名空间选择你自定义的名称
在 Pages 项目中进入:
设置 -> 绑定 -> 添加 Workers AI -> 变量名称输入:AI -> 保存在 Pages 项目中进入:
设置 -> 变量和机密 -> 类型:文本 -> 变量名称:ADMIN_PASSWORD -> 值:你的后台密码 -> 保存至少设置:
ADMIN_PASSWORD=你的后台密码可选设置:参考配置
ADMIN_USER=admin
AI_MODEL=@cf/openai/gpt-oss-20b上述几个步骤完成保存后:
设置 -> 部署选择列表第一个,点击右侧的 ⋯ ,选择重新部署,等待部署完成
- 打开 Pages 分配的域名。
- 使用管理员账号登录。
- 进入后台添加 Cloudflare 账号配置。
- 填写 Account ID、API Token 和 Zone ID。
- 返回首页按账号、区域、主机名、服务名和时间范围筛选数据。
- 点击 AI 分析,查看当前筛选范围的风险判断。
在 Cloudflare Dashboard 中进入:
右上角头像 -> 配置文件 -> API 令牌 -> 创建令牌 -> 使用模板:阅读分析数据和日志 -> 继续以显示摘要 -> 创建令牌复制cfut_xxx开头的API Token
在 Cloudflare Dashboard 中进入:
计算 -> Workers 和 Pages右侧或者底部,复制Account ID
此项较为特殊,因为每个Zone ID对应一个域名,选择你想加入分析的域名,可以输入多个,每行一个
在 Cloudflare Dashboard 中进入:
域名 -> 概览 -> 需要加入的域名右侧或者底部,复制区域 ID
本项目提供兼容 edgetunnel 的公开用量接口:
/usage.json返回字段包含:success、pages、workers、total、max、resources、msg,并允许跨域读取。
- Cloudflare API Token 不会在前端展示。
- Zone ID 不会在前端展示。
- 未登录用户默认隐藏敏感数据。
- 管理员可以在后台调整公开隐私设置。
本项目使用 GPL-3.0 License。