自托管可用性监控
挂了别让用户
先发现。
定时探测 HTTP、端口、Ping、DNS,把心跳画成一条时间线。故障、证书到期、域名到期,走你配好的通知渠道。
- 探测类型
- 9
- 通知渠道
- 45
- 最短探测间隔
- 20 秒
- 心跳保留
- 180 天
值班墙界面示意,不是实时数据
官网
www.example.com
结算接口
pay.internal:8443
邮件网关
mail.example.com:25
主站 DNS
example.com
源站 Ping
203.0.113.10
文档站
docs.example.com
进了面板之后。
分组树、心跳条、批量导入、故障通知、证书到期,都在同一张台面上。格子里是界面示意,不是实时数据。
刚刚翻转
结算接口
pay.internal:8443
恢复后
官网
www.example.com
状态从 UP 掉到 DOWN,才叫人。不是每一次探测都刷屏。
一条地址,按规则探
HTTP / 关键词 / JSON 盯页面;端口、Ping、DNS 盯基础设施;Push 留给不能主动访问的任务。
HTTP / HTTPS
状态码 · 关键词 · JSON
端口
TCP 能否连上
Ping
ICMP 往返
DNS
解析是否还在
Push
设备自己报活
每条监控单独设判定条件和间隔,互不影响。
证书和域名也会过期
条越往后越淡,是还没到那天。红的那一格,是该续了。
证书剩余
域名剩余
- 读取信息
- 签发方、到期时间
- 域名信息
- 注册商与到期时间
- 提醒方式
- 两类到期提醒可分别开关
- 检查频率
- 自动定时复查,无需手动
- 续期之后
- 下次复查自动更新,无需操作
一次故障的全过程
重试到上限才判定故障,避免一次抖动就叫人。
- 09:14:02探测 200 · 86ms
- 09:15:02超时,进入重试 1/3
- 09:15:32重试 2/3 · 连接被拒绝
- 09:16:02重试 3/3 失败,标记 DOWN
- 09:16:03通知已发出:邮件 + 企微
- 09:21:40恢复 UP · 91ms
- 连续失败几次算故障
- 每条单独设
- 多久重试一次
- 与探测频率分开
- 长时间没恢复
- 按间隔再提醒一次
- 计划内停机
- 可开启反转,停机不再误报
- 恢复判定
- 成功一次即恢复,立刻通知
- 故障记录
- 起止时间与耗时自动留存
探测能力
不同东西,用不同探法。
9 种监控类型分三组:盯站点、盯基础设施、等被监控端自报。判定标准和参数各不相同。
同一条地址,不同探法
探法决定「什么叫挂了」。状态码、关键词、JSON 字段、端口、解析结果,判定标准都不同。
HTTP 状态码
关键词命中
JSON 字段比对
探测间隔从 20 秒 到 1 小时 都能设,超时默认取间隔的 80%。
状态流转
从探测到通知,中间发生了什么。
一次状态变化要经过判定才出声。这张图里没有魔法,只有顺序。
探测
引擎按每条的间隔发起请求,HTTP、端口、Ping、DNS 或等被监控端自报。
判定
连续失败达到重试上限才翻成 DOWN,避免一次抖动就吵醒你。
通知
只有绑定了渠道的监控项会出声,消息里带上地址、状态码和失败原因。
留痕
每次探测都会记录,可用率和响应时间由这些记录算出。
一次真实的状态变化,在心跳里留下这些东西
告警送达
45 个渠道,挑你已经有的用。
不用为了收告警再装一个 App。常用的 IM、短信、值班系统都在列表里,配好先发一条测试消息。
能力清单
该有的都在,没用的不塞。
下面这些不是路线图,是现在就能点到的功能。
权限与协作
给人分配事,不给所有人钥匙。
角色只有两种,细粒度靠权限位。谁能在导航里看到什么,由权限决定。
谁在什么位置,看得到什么
按权限渲染导航。没有对应权限的入口不会出现,而不是点了才报错。
管理员
全部权限 + 用户管理
日常运维
增改监控、检测、标签、通知
只读
仅仪表盘与监控详情
自己改密码、换头像、改邮箱
自托管
数据在哪里,你说了算。
数据在自己的环境里,上线过程轻,后续备份和迁移都按你熟悉的方式做。
上线很轻
不用改架构,也不用先接一堆外部服务。
需要先看界面也可以:关闭探测后启动,确认无误再开启。
常见疑问
部署前最常问的几件事。
如果这里没写到,去使用指南里按步骤走一遍更快。
必须公网才能用吗?
不用。它可以只在内网跑,探测内网地址、私网端口和内部域名,仪表盘也只在你的网络里可见。
探测频率能到多快?
最短 20 秒,最长 1 小时。超时默认取间隔的 80%,重试次数和重试间隔都能单独调。
一条挂了会被通知几次?
按状态变化通知。DOWN 发一次,恢复 UP 再发一次,中间不会每次探测都刷屏。
历史数据会一直留着吗?
默认保留 180 天,管理员可以改。重要的状态变化事件不受清理影响,长期可查。
多个站点能共用一套监控吗?
可以。一台实例管多个目标,用分组和标签区分环境,用权限位区分谁能改、谁只能看。
怎么确认通知真的能发出去?
每个渠道配好之后都能发一条测试消息,确认可达再保存。第一次真实故障前就验证过。
接下来
从哪一步开始都行。
先把心跳跑起来,参数可以慢慢调。