轻量级站点监控面板 LightPing 开源啦

LightPing------轻量级本地站点可用性监控面板

作为一个计算机专业学生,平时手上有几个自己搭的小站点,时不时想看看它们有没有正常在线。 试过 Uptime Kuma,功能的确强大,但是对我这种只需要简单监控几个网站的场景来说,太过于繁重了。一大堆组件、配置,部署维护都要花精力,有点 "杀鸡用牛刀"。

于是便萌生一个想法:干脆自己写一个够用的监控面板。 不用复杂架构,不用重量级数据库,只保留核心能力:定时探测站点、记录响应状态、画个简单图表,再加一个交互舒服的 Web 页面。 趁着国庆假期,就有了这个项目:LightPing。

项目简介

LightPing 是轻量自托管 HTTP 站点监控仪表盘。 基于 Python 开发,SQLite 单文件存储,不需要额外部署 MySQL、Redis。拿到代码,装好依赖就能直接跑。适合个人小站点、测试服务的可用性监控。

功能亮点

  • 站点管理:增删改监控目标,自定义探测间隔、超时时间、期望 HTTP 状态码
  • 探测方式:后台自动定时巡检 + 支持手动一键即时探测
  • 独立启停:可单独关闭某个站点的自动探测,历史数据完整保留,不受影响
  • 状态可视化:红绿指示灯标识在线 / 离线,自动计算站点可用率
  • 响应时间折线图,直观查看延迟变化趋势
  • 检测记录分页表格,专门优化页面布局,切换分页不会上下抖动
  • 卡片联动交互:点击卡片,同行所有卡片同步展开 / 收起,界面整洁统一

技术栈

FastAPI + SQLAlchemy + SQLite + APScheduler + httpx,前端原生 HTML/CSS/JS + ECharts。 没有用特别前沿花哨的技术,整个项目的设计思路就是轻量化优先,降低部署上手门槛。

快速部署

bash 复制代码
# 克隆仓库
git clone https://github.com/Daniel-1233/LightPing---Lightweight-Uptime-Monitor.git
cd LightPing---Lightweight-Uptime-Monitor

# 安装依赖
pip install -r requirements.txt

# 启动服务
uvicorn app.main:app --reload

访问 http://127.0.0.1:8000,打开 Web 面板,添加监控目标,就可以开始巡检。 数据全部保存在 SQLite 单文件里,备份只需要直接复制 db 文件。

适用场景

个人博客、小型后端服务、测试站点的可用性监控。

不适合大规模集群、高并发企业级监控场景。

后续规划

这个 v1.0 只是基础可用版本,后面有空会继续迭代:

  • 告警推送(钉钉 / 邮件 / Webhook,站点离线及时通知)
  • Docker 容器化一键部署
  • HTTPS 证书有效期检测
  • 检测记录导出功能

项目地址

GitHub:github.com/Daniel-1233...

这个项目算是一次小的全栈练手,顺便解决了一些问题。 写接口、操作数据库、处理后台定时任务,到前端一点点调交互细节,卡片对齐、页面防抖动,很多功夫都花在看不见的体验打磨上。 如果你也在找一个简单轻量的站点监控工具,或者想参考学习 FastAPI 项目,欢迎试一下。

项目对你有帮助的话,欢迎 Star🌟,遇到 Bug 或者有新想法可以直接提 Issue,欢迎交流。

相关推荐
用户5372312882461 小时前
你的 WGSL 从未被执行过——一个 secure context 静默陷阱的排查实录
前端
用户EasyAdminBlazor1 小时前
EasyAdminBlazor 日志系统源码解析:为什么数据库日志需要有界队列?
后端
Sylven1 小时前
【DevOps 开发流程】问题+标签驱动开发,可视化你和AI的开发进度
后端
松就是我902981 小时前
Agent系统设计七条通用原则-CSDN
后端
136096757231 小时前
repo 与 index:站点目录该怎么切
后端
那就叫王师傅1 小时前
AD基础学习01
后端
谁在黄金彼岸1 小时前
2026年第40周GitHub趋势周报
github
lerhxx1 小时前
从 Markdown 到生成式 UI:AI 应用中的流式渲染实践
前端·javascript
迅猛龙办公室1 小时前
python实现简单进度条
java·前端·python