传统监测工具(如 Uptime Kuma)监测的是 HTTP 连通性——但在 LLM 中转场景下,"HTTP 200 却返回空内容或错误码" 的"假活"现象屡见不鲜。
RelayPulse 通过消耗真实 Token 定时发起 API 请求,并校验响应内容。只有 LLM 真的"吐字"了,才算可用。
- 💸 真实 API 探测 - 消耗真实 Token,拒绝虚假繁荣
- 📊 可视化矩阵 - 24h/7d/30d 可用率热力图,一眼看穿服务质量
- 🔄 配置热更新 - 基于 fsnotify,修改配置无需重启
- 💾 多存储后端 - SQLite(单机)/ PostgreSQL(K8s)
- 🐳 云原生友好 - 极小 Docker 镜像,支持水平扩展
- 自建/采购 LLM 中转服务,持续跟踪可用性表现
- 多云 LLM 供应商质量对比,观察延迟与错误率
- 外部 API 依赖监测,避免"假活"导致业务故障
- 探测成本极低:
max_tokens: 1,每次约 20 input + 1 output tokens;默认每分钟一次,约 3 万 tokens/天/服务 - 数据本地存储:配置与密钥仅存本地/自托管环境,监测数据不回传
# 1. 下载配置文件
curl -O https://raw.githubusercontent.com/prehisle/relay-pulse/main/docker-compose.yaml
curl -O https://raw.githubusercontent.com/prehisle/relay-pulse/main/config.yaml.example
# 2. 准备配置
cp config.yaml.example config.yaml
vi config.yaml # 填入你的 API Key
# 3. 启动服务
docker compose up -d
# 4. 访问 Web 界面
open http://localhost:8080🎬 完整安装教程:QUICKSTART.md
# 安装依赖
go mod tidy
cd frontend && npm install && cd ..
# 准备配置
cp config.yaml.example config.yaml
# 启动开发服务(带热重载)
make dev
# 或直接运行
go run cmd/server/main.go👨💻 开发者指南:CONTRIBUTING.md
| 我要... | 看这个文档 |
|---|---|
| 🚀 5 分钟内跑起来 | QUICKSTART.md |
| 💻 本地开发/调试 | 本文档的「本地开发」章节 |
| ⚙️ 配置监测项 | 配置手册 |
| 🤝 参与贡献 | CONTRIBUTING.md |
以上 3–4 个是项目维护方优先保证更新的「核心文档」。
AGENTS.md、CLAUDE.md主要供 AI 助手使用,通常不需要人类维护。
README.md(本文件):项目总览、特性介绍、快速开始、本地开发说明QUICKSTART.md:面向用户的快速部署与常见问题docs/user/config.md:配置项说明、环境变量规则、安全实践CONTRIBUTING.md:贡献流程、代码规范、提交与 PR 约定
# config.yaml
interval: "1m" # 检查频率
slow_latency: "5s" # 慢请求阈值
monitors:
- provider: "88code"
service: "cc"
category: "commercial"
sponsor: "团队自有"
sponsor_level: "advanced" # 可选:basic/advanced/enterprise
url: "https://api.88code.com/v1/chat/completions"
method: "POST"
api_key: "sk-xxx" # 或通过环境变量 MONITOR_88CODE_CC_API_KEY
headers:
Authorization: "Bearer {{API_KEY}}"
body: |
{
"model": "claude-3-opus",
"messages": [{"role": "user", "content": "hi"}],
"max_tokens": 1
}详细配置说明:docs/user/config.md
| 后端 | 适用场景 | 优点 |
|---|---|---|
| SQLite | 单机部署、开发环境 | 零配置,开箱即用 |
| PostgreSQL | K8s、多副本部署 | 高可用、水平扩展 |
# SQLite(默认)
docker compose up -d monitor
# PostgreSQL
docker compose up -d postgres monitor-pg# 获取监测状态(24小时)
curl http://localhost:8080/api/status
# 获取 7 天历史
curl http://localhost:8080/api/status?period=7d
# 健康检查
curl http://localhost:8080/health
# 版本信息
curl http://localhost:8080/api/version时间窗口说明:API 使用滑动窗口设计,period=24h 返回"从当前时刻倒推 24 小时"的数据。这意味着:
- 每次请求的时间基准不同,时间桶边界会随之微调
- 服务商排名始终反映最近 24 小时的真实可用率
- 如需固定时间点数据用于集成,建议按固定频率(如每小时整点)采样
🔧 API 参考章节正在整理,以上端点示例即当前权威来源。
后端
- Go 1.24+
- Gin (HTTP framework)
- SQLite / PostgreSQL
- fsnotify (配置热更新)
前端
- React 19
- TypeScript
- Tailwind CSS v4
- Vite
查看 CHANGELOG.md 了解版本历史和最新变更。
欢迎提交 Issue 和 Pull Request!请先阅读 CONTRIBUTING.md。
本项目是基于 MIT 许可证发布的技术监测工具。
数据性质说明:RelayPulse 展示的状态与趋势来源于自动化技术探测,可能因网络波动、地域差异、缓存延迟等原因产生误差。展示结果仅供参考,不构成对任何服务的合规性、合法性、资质或商业信誉的判断。详见 监测方法论说明。
运营免责:作者不对任何使用本软件搭建的站点(包括 relaypulse.top)上展示的第三方服务商的内容、可靠性、信誉或资金安全负责。用户与第三方服务商的交互风险自负。
纠错机制:如您认为数据存在错误,可通过 GitHub Issue 提交纠错申诉,我们的目标是在 48 小时内响应(节假日或高峰期可能延迟)。
MIT License © 2025
- 🌐 在线演示: https://relaypulse.top
- 📦 镜像仓库:
ghcr.io/prehisle/relay-pulse:latest - 💬 问题反馈: https://github.com/prehisle/relay-pulse/issues