网站挂了你多久才知道?
以前我是等用户来告诉我——最尴尬的那种。后来试过几个在线监控服务,免费额度刚够盯几个站,超了就要付费,数据、告警全在人家手里。找能自己部署的,翻来翻去绕不开一个名字:Uptime Kuma,GitHub 9.2 万 Star,自托管监控里基本没有对手。
这次我在 Windows 本地把它完整跑了一遍:加了 6 个真实监控(本机、百度、GitHub 都上了),搭了公开状态页,配了维护窗口,截了 23 张图。结论放前面:功能比你想象的能打,原生部署比想象的折腾——但折腾的地方我全踩完了,整合包里都给你铺好了。
Uptime Kuma 能干什么
一句话:它替你盯着网站,出事第一时间喊你,而不是等用户来投诉。
按用途对号入座——
- 盯自己的站点:挂了、变慢、证书快过期,短信/邮件/微信推送立刻到
- 盯别人的服务:依赖的第三方 API 一挂你就知道,不用瞎猜是自己的问题
- 对外挂状态页:给客户看的「服务状态」页面,出故障时少接十个电话
- 盯家里的设备:NAS、路由器、软路由,HTTP 探针或者 ping 都能用
- 盯数据库和端口:TCP 端口通不通,比人肉 telnet 靠谱
它不是日志分析,也不是 APM——只看「活着没活着、响应多快」,查性能瓶颈得配别的工具。
核心功能亮点
- 20 多种监控类型:HTTP(s)、TCP 端口、Ping、DNS、关键词匹配、JSON 查询、Docker 容器……够用了
- 多通道告警:邮件、Telegram、企业微信、钉钉、Slack、Webhook 等几十种通知方式
- 公开状态页:可以自定路径、自定样式,发给客户就能看
- 维护窗口:计划内维护期间不告警,不然半夜被自己的重启叫醒
- 心跳 + 响应时间图表:每个监控都有历史曲线,不是只有一个红绿点
- 分组和标签:站点多了不混乱
- 多用户:给别人开只读账号看状态
- 自带中文界面:装完在设置里切,不用装语言包
这工具什么来头
- 版本 v2.5.6(GitHub 9.2 万 Star)
- 协议:MIT,随便改随便用
- 技术栈:Node.js 后端 + Vue 3 前端,数据库用 SQLite(单文件、零配置)
- 什么都能监控:HTTP 网页、Ping 连通、TCP 端口、页面关键词、DNS 解析、SSL 证书到期……20 多种类型
- 通知渠道 90 多种:Telegram、钉钉、企业微信、飞书、邮件、Webhook……
- 杀手锏是公开状态页——那种大厂才有的「服务状态」页面,你也能一键发一个
我的测试环境
| 项目 | 配置 |
|---|---|
| 系统 | Windows 11 本地 |
| 运行时 | 包内自带 Node.js 22(免装环境,这是这个包的关键) |
| 数据库 | SQLite |
| 端口 | 3001 |
部署:解压,双击 bat
1. 解压到任意目录。
2. 双击 启动监控系统.bat。
3. 浏览器打开 http://localhost:3001。
首次打开会先引导你选数据库,直接选 SQLite 就行:

选完创建管理员账号,自己设用户名密码(没有默认密码,别去搜了):

第一次启动会等十几秒——它在建数据库结构,命令行窗口会滚一堆日志,别急着关窗口。滚完出现监听地址就成功了。
一个只有踩过才知道的坑:启动脚本里的端口参数必须写成
--port=3001这种等号形式。写成--port 3001(中间带空格)会被程序内部的参数解析器直接忽略,端口还是默认值。我第一次测试就栽这了,想开俩服务结果俩都抢 3001 端口,报EADDRINUSE才反应过来。还有个环境级的坑:电脑挂着代理软件(Clash 之类)的时候,服务会继承系统代理变量,结果监控外网目标全军覆没。我实测时 GitHub 一直显示故障,排查半天以为是防火墙,其实是请求全走了代理隧道超时。本机自用建议启动前退出代理。
进去走一圈
仪表盘是主界面:左边监控列表,右边状态速览和事件流。我这 6 个监控跑了一段后的真实数据:

百分比是「在线率」,右边红绿条是最近 60 次心跳。注意 GitHub 那条一直飘红——这反而说明监控在真干活,它不管你网站是不是「主流」,连不上就红给你看。事件流里每条记录都能追溯到具体时间和错误原文。
监控详情点进任意一个,有响应时间曲线、平均响应、证书和域名到期倒计时:

图表能切时间范围,最近 1 小时到 1 年都有:

添加监控的参数很细:检测间隔、重试次数、超时、HTTP 方法、期望状态码、关键词匹配,还能按天设置「只在工作日检测」:

公开状态页,我觉得这是最值的功能。顶部「状态页面」→ 新建 → 勾选要公开的监控,就得到一个能发给任何人看的页面:

不用写代码不用装主题。用户、客户随时能看你的服务在线率,有故障顶部自动亮黄色告警条。编辑界面左边配置右边实时预览:

维护窗口。要重启服务器、备份数据库,又不想让监控疯狂发告警?提前建个维护窗口:

维护期内的监控自动进入「维护中」,告警全部静默,状态页上也会显示蓝色维护横幅:

通知是它的强项,90 多种渠道任选,Telegram、钉钉、企业微信、飞书、邮件全都有:

暗色模式。设置 → 外观里可以切明亮/黑暗/自动,暗色是这个质感:

手机端也做了适配,在手机上打开会自动变成底部标签栏的布局:

API 密钥也给开发者留了口子,生成后可以接自己的自动化流程:

实话实说
值得装的地方:
- 功能是全的。监控类型、通知渠道、状态页、维护窗口、API……别的监控工具要么收费要么缺胳膊少腿,它全给你了,还不要钱。
- 数据全在自己手里。所有历史记录存在本地 SQLite 里,哪天不玩了整个文件夹拷走,换台机器接着用。
- 状态页是真省事。自建站群的、接外包的、自己玩的都合适,给客户看一眼在线率,专业度直接上去。
缺点也得说清楚,想装的看完再决定:
- 原生部署对小白不友好。官方主推 Docker,Windows 直接跑要 Node 环境 + 自己构建前端。我整合包里内置了 Node 运行时和构建产物,解压双击就能用,但代价是包比较大(压缩包 80 多 MB,解压后 200 多 MB),网速慢的下之前有数。
- 没有官方 Windows 一键包。网上流传的所谓「exe 版」都是第三方打包的,来源杂、更新滞后,不建议碰。
- 监控频率别调太狠。默认 60 秒是有道理的,你要调成 10 秒再挂 100 个监控,这台电脑会开始喊累——它再轻也是单进程干活。
- 部分界面文案是英文的。核心界面有简体中文,个别高级设置的说明还是英文,不影响用,就是看着费点劲。
常见问题
源码获取
上面教程用到的完整源码包(含内置 Node 运行时、已构建前端、全套依赖),我放夸克网盘了,免费取:
上面记的这些坑,你自己走一遍也都会遇到。环境、依赖、配置、目录结构,一个都省不了。包里是我这边全部跑通之后才打的——要跳过这几步,直接拿下面这个。
两个小提醒:
- 建议先「转存到自己网盘」再下载——直接下载的链接容易失效,转存后就是你的了,随时能下;
- 手机上操作:点开链接 → 右下角「保存到网盘」→ 回夸克 App 的「我的网盘」里下载。
安装卡住了?对照上面的常见问题部分,基本都能解决。
装之前先确认一件事:Node 运行时。这是它唯一真正的门槛——官方只发源码,得自己装 Node、装依赖、构建前端;我包里内置了运行时和已构建好的前端,所以对你来说这一步可以直接跳过。