简介
uptime-kuma[1]是一个花里胡哨的自托管的网站监控工具,支持的功能也相对较为丰富:
- 监控HTTP(s)/TCP/HTTP(s)关键字/Ping/DNS记录/推送/Steam Game Server等的正常运行时间。
- 支持丰富的通知渠道,如通过Telegram、Discord、Gotify、Slack、Pushover、电子邮件 (SMTP) 和70 多种通知服务发送通知,请单击此处查看完整列表[2]。
- 20 second intervals.
- [支持多种语言](https://github.com/louislam/uptime-kuma/tree/master/src/languages “languages”)
- 简洁的状态页面
- Ping图
- 监控证书信息
安装
监控服务与被监控的服务不要放在同一个服务器上,并且监控服务重要等级应该为level 1.
- 通过docker安装
mkdir -pv /data/uptimekuma && cd /data
docker run -d --restart=always -p 3001:3001 -v `pwd`/uptimekuma:/app/data --name uptime-kuma louislam/uptime-kuma:1.11.4
- 通过docker-compose安装
version: "3"
services:
uptime-kuma:
image: louislam/uptime-kuma:1.11.4
container_name: "uptime-kuma"
restart: "always"
volumes:
- "/etc/localtime:/etc/localtime"
- "/data/uptimekuma:/app/data"
ports:
- "3001:3001"
配置nginx(可选)
server {
server_name status.devopsman.cn;
listen 443 ssl http2;
ssl_certificate /www/server/panel/vhost/nginx/ssl/status.devopsman.cn_bundle.pem;
ssl_certificate_key /www/server/panel/vhost/nginx/ssl/status.devopsman.cn.key;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
access_log /www/wwwlogs/uptimestatus.log main;
error_log /www/wwwlogs/uptimestatus.error.log;
}
相比blackbox_exporter去监控url和证书,这个就显示很高大上了,花里胡哨的监控面板,有时候更适合给领导和客户欣赏;
告警
安全性
API
最后值得提的就是,这个作品的作者目前还没有支持通过API进行监控项等信息的意向,通过在github上issue中得知,估计就是贡献代码,也不会采用,如果支持了API,那么就可以通过自动化的方式进行便捷式管理了。不过自己可以实现哦
参考资料
[1]uptime-kuma: https://github.com/louislam/uptime-kuma
[2]notifications: https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications
[3]uptimerobot: https://uptimerobot.com/