开源服务运行监控工具Lunalytics
简介
什么是 Lunalytics ?
Lunalytics
是一个开源监控工具,使用Node.js
和React
构建,专注于为开发者提供优先体验,支持多个用户。Lunalytics
目前可以监控HTTP(s)/TCP
连接,未来会添加更多连接。除了ping
👀 之外,还在研究不同的监控系统。
主要特点
- 支持多用户:允许多个用户同时使用和管理监控功能。
- HTTP(s)/TCP 监控:可以监控
HTTP
和TCP
连接,未来将添加更多监控选项。 - 角色基于访问控制:实现不同用户权限管理。
- 简洁易用的用户界面:提供清晰、友好的用户体验。
- 可定制的用户界面和配置:用户可以根据需要自定义界面和个人资料。
Lunalytics
旨在克服现有监控工具的不足,提供一个现代化、易于使用的解决方案。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 lunalytics
,选择第一个 ksjaay/lunalytics
,版本只有一个 latest
,所以双击直接下载。
卷
在 docker
文件夹中,创建一个新文件夹 lunalytics
,并在其中建一个子文件夹 data
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/lunalytics/data |
/app/data |
存放数据库和设置文件 |
docker/lunalytics/logs |
/app/logs |
存放日志文件 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 |
---|---|
2308 |
2308 |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 lunalytics 和 子目录 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 lunalytics 和 子目录 |
反向代理
简单测试了一下,使用 http://群晖IP:2308
注册时会报错 Please enter a valid URL.
,而且登录也不能成功。老苏尝试用 nginx proxy manager
做反代后,可以正常登录
假设实际访问地址为: https://lunalytics.laosu.tech
域名 | 局域网地址 | 备注 |
---|---|---|
lunalytics.laosu.tech |
http://192.168.0.197:2308 |
Lunalytics 的访问地址 |
在 npm
中的设置
SSL
都勾选了
运行
在浏览器中输入反代的域名,就能看到注册向导界面
Email
:填入Email
地址Uasename
:填入用户名
设置密码
设置按照类型
如果选择了 Advanced Setup
- 可以选择不同的数据库,
SQLite
和PostgreSQL
- 数据库名默认就可以
接下来是网页设置
JWT Secret
:相当是一个密钥,用于对Token
进行签名验证。是一个长且随机的字符串。Website URL
:这里必须要用域名,否则会报错Please enter a valid URL.
,下图中尚未做修改,是错误的范例
监控
设置完成后的主界面
点 NEW
新建监控,以老苏的博客为例
Name
:不能使用中文,不能有空格Monitor Type
:支持http
和tcp
URL
:需要监控的网址Method
:支持HEAD
、DELETE
、GET
、OPTIONS
设置完成后,开始是没有数据的
慢慢的就有数据了
再多等一会儿
虽然支持多种通知,但对国内用户并不友好
参考文档
KSJaay/Lunalytics: 🚀 Open source monitoring tool built with Node.js
地址:https://github.com/KSJaay/LunalyticsLunalytics
地址:https://lunalytics.xyz/Welcome to Lunalytics documentation | Lunalytics
地址:https://lunalytics.xyz/intro.html博壹BOYY - Telegram 创建 bot 获取 token 和 chatId 以及发送消息简明教程
地址:https://www.boyy.org/notebook/mark/141118.html