这个项目能做什么

openstatus 是一个将正常运行时间监控与公开状态页面相结合的开源平台,其设计理念围绕基础设施即代码展开。团队不再仅通过 Web UI 配置监控项,而是在 YAML 或 Terraform 中声明监控项、状态页面和通知渠道,然后从 CLI 或 CI 流水线中应用它们。 README 中描述的关键能力: - 基础设施即代码:监控项、状态页面和通知在 YAML 或 Terraform 中定义,并从 CLI 或 CI 应用。 - 面向人类和代理的工具:为 Claude、ChatGPT 或 Cursor 等客户端提供 MCP 服务器,提供带 --json 模式的 CLI,提供带 Node SDK 的类型化 JSON-over-HTTP API(ConnectRPC),以及只读或读写 API 密钥作用域。变更操作会记录在审计日志中。 - 状态页面:可自定义的页面,支持自定义域名、密码保护、维护窗口,以及通过电子邮件、RSS 和 webhook 发送的订阅者通知。 - 正常运行时间监控:检查从三个云提供商的 28 个全球区域运行,当服务宕机或变慢时,通过 Slack、Discord、PagerDuty、电子邮件和其他渠道发送通知。 - 部署:可作为托管服务使用,也可自托管。推荐使用 Docker Compose 进行本地开发和自托管,并为服务器、仪表板、工作流、私有位置、状态页面和检查器组件发布了预构建镜像。已有针对 Coolify 和 Railway 的部署指南,手动设置需要 Node.js、pnpm、Bun、Deno 和 Turso CLI。 - 许可与定价说明:AGPL-3.0,固定定价且成员数量不限,私有位置运行在单个 8.5MB 的 Docker 镜像中。 提到的技术栈:仪表板使用 Next.js,API 服务器使用 Hono,检查器使用 Go,数据库使用 Turso,ORM 使用 Drizzle,分析使用 Tinybird,界面使用 Tailwind CSS 和 shadcn/ui。