Upptime 是一个基于 Github Actions 的开源项目,用于监控服务的可用性和响应时间。它利用 Github 的资源,无需额外服务器或存储,适合低成本或无成本的监控需求。
优秀应用案例
○ 未找到:lighthouse.zhheo.com
为什么是 Upptime
国内厂商提供的免费额度都太小。免费额度最多的阿里云拨测也只够一个监测点每隔 5 分钟监控一个服务地址。
看到有些独立网站使用的 uptime-kuma 项目,是一个 GitHub 开源项目 https://github.com/louislam/uptime-kuma 。最终的监控效果挺好,展示非常清晰、还支持各种告警通知渠道。但,部署 uptime-kuma 时,需要挂载本地盘或者使用 MySQL 存储数据。对于,没有购买服务器的同学来说,成本就略高了。
此时 Upptime 这个项目进入候选名单。Upptime 也是一个 GitHub 开源项目 https://github.com/upptime/upptime 。Upptime 的实现方式是使用 GitHub Actions 定时执行脚本,将监测结果存储在 GitHub 的仓库中,将告警通过 Issues 的方式提交和管理。这就不需要额外的服务器或者数据存储了,与我之前开发的 https://github.com/shaowenchen/debugger-action 项目,利用 GitHub Actions 资源免费运行 6 小时的 Kubernetes 集群类似。
利用 GitHub Actions 提供计算资源,使用 GitHub Repository、Issues 存储数据,这样的实现方式,对于使用者来说,成本为零。只要不滥用,比如用于挖矿、高频率使用、大规模的数据存储等,不会被 GitHub 封禁账号。


