推荐个监控程序 Uptime Kuma

绾秋 发布于 15 天前 69 次阅读


一、功能特点

  1. 多协议支持
    • Uptime Kuma 可以监控多种类型的服务。它支持 HTTP (S) 协议,能够检查网站是否可以正常访问、页面加载速度等情况。对于像 API 等基于 HTTP 的服务,也能有效地监控其可用性。
    • 还支持 TCP 协议,这使得它可以监控诸如数据库服务(如 MySQL 的 3306 端口、Redis 的 6379 端口等)、邮件服务器(SMTP 的 25 端口、IMAP 的 143 端口等)等基于 TCP 连接的服务是否正常运行。
    • 支持 ICMP(ping)监控,通过发送 ICMP 数据包来检测服务器是否可达,这种方式简单直接,是判断服务器网络连通性的基本方法之一。
  2. 多种通知方式
    • 当被监控的服务出现故障或者恢复正常时,Uptime Kuma 可以通过多种方式通知用户。它支持常见的电子邮件通知,用户可以配置接收通知的邮箱地址,当有状态变化时,会收到详细的邮件内容,包括服务名称、状态变化时间等信息。
    • 支持流行的即时通讯工具通知,如 Telegram。用户可以在 Telegram 中创建一个机器人并将其与 Uptime Kuma 关联,这样就能够在手机或其他设备上及时收到服务状态更新的消息。
    • 还支持 Webhook 通知,Webhook 可以将 Uptime Kuma 的监控事件发送到其他应用程序或者自定义的脚本中,方便用户进行更灵活的集成和自动化处理。
  3. 监控历史记录与统计数据
    • 它能够记录每个被监控服务的状态历史,用户可以查看在过去一段时间内(如一天、一周、一个月等)服务的可用性情况。这些历史记录以直观的图表形式展示,例如折线图可以清晰地显示服务的正常运行时间和故障时间的分布。
    • 提供统计数据,如服务的平均响应时间。对于网站监控来说,平均响应时间是衡量网站性能的一个重要指标。通过这些统计数据,用户可以了解服务的性能趋势,发现潜在的问题,例如响应时间逐渐变长可能意味着服务器负载过高或者网络出现拥塞。
  4. 自定义监控间隔与超时设置
    • 用户可以根据需要设置监控的间隔时间。对于一些关键的服务,可以设置较短的监控间隔,如每隔 1 分钟检查一次;对于不太关键或者比较稳定的服务,可以设置较长的间隔,如每隔 10 分钟监控一次。
    • 同时,还可以设置超时时间。当被监控的服务在超时时间内没有响应,Uptime Kuma 就会判定服务出现故障。合理设置超时时间可以准确地检测服务的可用性,避免因为网络短暂波动等因素导致误判。

项目地址:GitHub - louislam/uptime-kuma: A fancy self-hosted monitoring tool

我搭建的:网站系统服务状态 (gx.gx.cn)

相关截图: