
SolStatus 完全指南从安装到配置打造你的专属 uptime 监控系统【免费下载链接】solstatusAn uptime monitoring service that is easy and cheap to run at scale. Create endpoint checks for uptime, latency, and status code. Supports OpsGenie for alerts.项目地址: https://gitcode.com/gh_mirrors/upti/solstatus想要构建一个低成本、高可扩展的网站监控系统吗SolStatus 是你的终极解决方案这款开源的 uptime 监控工具让你能够轻松创建端点检查监控网站的可用性、延迟和状态码支持 OpsGenie 告警功能而且运行成本极低。无论你是个人开发者还是企业团队SolStatus 都能帮助你建立专业的监控体系。 为什么选择 SolStatus在当今数字化时代网站的可用性至关重要。传统的监控服务往往价格昂贵而 SolStatus 提供了完美的替代方案成本效益基于 Cloudflare 架构运行成本极低易于部署几分钟内即可完成安装配置高可扩展性支持大规模监控需求开源自由完全开源可自定义扩展功能 快速开始5分钟部署 SolStatus系统要求Node.js 18 或更高版本pnpm 包管理器Cloudflare 账户用于部署第一步克隆项目git clone https://gitcode.com/gh_mirrors/upti/solstatus cd solstatus第二步安装依赖pnpm i第三步配置环境变量复制环境变量模板文件cp packages/infra/.dev.vars.example packages/infra/.dev.vars然后编辑.dev.vars文件配置你的 Cloudflare 账户信息。第四步数据库初始化运行数据库设置命令pnpm db:setup这个命令会自动执行数据库迁移和种子数据填充。️ 项目架构解析SolStatus 采用现代化的微服务架构主要包含以下核心组件1. API 服务层 (packages/api/)基于 Cloudflare Workers 构建提供监控执行和触发器功能。每个监控端点都有独立的 Durable Object触发器通过 Alarm API 实现可编程的定时任务。2. 前端应用层 (packages/app/)使用 Next.js 15、shadcn UI、TailwindCSS v4 和 Drizzle ORM 构建的现代化 Web 界面。支持实时数据展示和配置管理。3. 基础设施层 (packages/infra/)包含所有基础设施配置和部署脚本支持 Cloudflare Workers、D1 数据库等服务的部署。4. 公共工具层 (packages/common/)共享的实用工具和数据结构定义确保各组件间的一致性。 详细配置指南监控端点配置在 SolStatus 中创建监控端点非常简单。系统支持以下监控类型HTTP/HTTPS 端点监控检查网站可用性和响应时间状态码验证确保返回正确的 HTTP 状态码响应时间监控跟踪 API 延迟性能自定义检查间隔从 1 分钟到 1 小时不等告警配置SolStatus 原生支持 OpsGenie 集成当监控端点连续两次检查失败时自动触发告警。你也可以配置邮件通知发送到指定邮箱Webhook 集成连接到 Slack、Discord 等平台自定义告警规则基于特定条件触发数据库管理项目使用 Drizzle ORM 管理数据库支持以下操作# 生成数据库迁移文件 pnpm run db:generate # 本地测试迁移 pnpm run db:migrate # 生产环境迁移 pnpm run db:migrate:prod # 使用 Drizzle Studio 管理数据库 pnpm run db:studio 生产环境部署单命令部署使用 CLI 工具快速部署整个系统# 部署基础设施 pnpm cli --fqdn uptime.yourdomain.com # 部署到生产环境 pnpm cli --fqdn uptime.yourdomain.com --stage prod # 销毁基础设施 pnpm cli --fqdn uptime.yourdomain.com --phase destroy分组件部署如果你需要单独部署某个组件# 仅部署 Next.js 应用 pnpm deploy:app # 仅部署 API Workers pnpm deploy:api # 部署 API 执行器 Worker pnpm deploy:api-exec # 部署 API 触发器 Worker pnpm deploy:api-trigger️ 本地开发环境启动完整开发环境从项目根目录运行pnpm dev这个命令会同时启动 API 服务和 Next.js 应用提供完整的开发体验。单独启动组件如果需要单独调试某个组件# 仅启动 API 服务 pnpm dev:api # 仅启动 Next.js 应用 pnpm dev:app # 启动 API 执行器 Worker pnpm dev:api-exec # 启动 API 触发器 Worker pnpm dev:api-trigger 监控数据与报告SolStatus 提供详细的监控数据分析实时仪表板可用性统计显示过去 24 小时、7 天、30 天的可用性百分比响应时间趋势可视化展示端点响应时间变化状态码分布分析各种 HTTP 状态码的出现频率历史数据检查记录保存所有监控检查的详细结果故障时间线清晰展示故障发生的时间和持续时间性能基准建立性能基准线识别异常导出功能CSV 导出导出监控数据用于进一步分析API 访问通过 REST API 获取监控数据Webhook 集成实时推送监控事件 维护与更新依赖管理项目使用 Dependabot 自动管理依赖更新npm 依赖每周检查一次GitHub Actions 每月检查一次设置 PR 限制避免更新过多手动更新依赖pnpm exec ncu -t minor -u pnpm i发布管理SolStatus 包含多个 npm 包发布时自动处理solstatus- 主 CLI 包solstatus/common- 共享工具和模式solstatus/api- API Workerssolstatus/app- Web 应用solstatus/infra- 基础设施工具 最佳实践建议1. 监控策略优化关键端点优先首先监控最重要的业务端点合理设置检查间隔根据业务重要性调整监控频率分级告警设置不同严重级别的告警规则2. 成本控制技巧利用 Cloudflare 免费额度合理规划 Workers 使用量优化检查频率非关键端点可适当降低检查频率数据保留策略设置合理的数据保留期限3. 高可用部署多区域部署利用 Cloudflare 全球网络备份配置定期导出监控配置监控监控系统建立 SolStatus 自身的健康检查 高级功能扩展自定义检查脚本SolStatus 支持通过 API 扩展自定义检查逻辑你可以添加复杂验证检查 JSON 响应结构性能基准测试对比历史性能数据业务逻辑验证验证特定的业务规则集成第三方服务除了 OpsGenie你还可以集成Slack/Discord实时通知团队PagerDuty专业的事件响应自定义 Webhook连接到内部系统多租户支持SolStatus 架构天然支持多租户场景你可以隔离监控数据为不同团队或客户提供独立视图权限控制基于角色的访问控制使用量统计跟踪各租户的资源使用情况 故障排除指南常见问题解决部署失败检查 Cloudflare 账户权限验证环境变量配置确认域名 DNS 设置正确监控数据不更新检查 Worker 日志验证数据库连接确认定时任务配置告警不触发检查 OpsGenie API 密钥验证告警规则配置查看告警历史记录日志与调试# 查看 Worker 日志 wrangler tail # 检查数据库连接 pnpm run db:studio # 测试 API 端点 curl http://localhost:8788/health 学习资源与支持官方文档项目包含详细的配置说明和 API 文档建议查阅基础设施配置文档API 服务文档前端应用文档社区支持虽然项目已归档但代码库完整可用你可以查看现有 Issue了解已知问题和解决方案研究代码实现学习 Cloudflare Workers 最佳实践自定义扩展根据需求修改源代码 开始你的监控之旅现在你已经掌握了 SolStatus 的完整使用方法无论是个人项目还是企业级应用SolStatus 都能为你提供可靠、经济、易用的监控解决方案。记住好的监控系统是稳定运行的基石。花一点时间配置 SolStatus让它成为你数字资产的守护者。从今天开始告别网站宕机的烦恼享受 24/7 的安心监控立即开始克隆项目按照本指南逐步配置打造属于你自己的专业监控系统吧【免费下载链接】solstatusAn uptime monitoring service that is easy and cheap to run at scale. Create endpoint checks for uptime, latency, and status code. Supports OpsGenie for alerts.项目地址: https://gitcode.com/gh_mirrors/upti/solstatus创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考