Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xos/serverstatus
服务器探针
https://github.com/xos/serverstatus
probe server uptime
Last synced: about 22 hours ago
JSON representation
服务器探针
- Host: GitHub
- URL: https://github.com/xos/serverstatus
- Owner: xOS
- Created: 2022-03-13T11:50:17.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-14T08:37:10.000Z (about 2 months ago)
- Last Synced: 2024-09-14T19:36:44.451Z (about 2 months ago)
- Topics: probe, server, uptime
- Language: Go
- Homepage: https://server.nange.cn
- Size: 7.58 MB
- Stars: 61
- Watchers: 0
- Forks: 9
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# 探针
> 本项目为原项目[哪吒探针](https://github.com/naiba/nezha)的修改自用版
## 注意:
* 本项目与原项目不兼容!
* 本项目配置文件与原项目不通用!## 精简掉的功能:
1. 网站监测,包含SSL证书监测;
2. ......## 演示图
### 前台
![首页截图](https://i.nange.cn/views/2022/05/25/b168b1.png)
### 后台
![后台截图](https://i.nange.cn/views/2022/05/25/fd1b7d.png)
## 安装脚本
```shell
curl -L https://raw.githubusercontent.com/xos/serverstatus/master/script/server-status.sh -o server-status.sh && chmod +x server-status.sh
sudo ./server-status.sh
```国内镜像加速:
```shell
curl -L https://fastly.jsdelivr.net/gh/xos/serverstatus@master/script/server-status.sh -o server-status.sh && chmod +x server-status.sh
CN=true sudo ./server-status.sh
```_\* 使用 WatchTower 可以自动更新面板,Windows 终端可以使用 nssm 配置自启动。_
## 非Docker环境手动部署控制面板
注意:
* 需要安装`Golang`且版本需要1.18或以上。
* 默认安装路径 `/opt/server-status/dashboard`。
* 手动部署的面板暂无法通过脚本进行面板部分的控制操作。1.克隆仓库
```bash
git clone https://github.com/xOS/ServerStatus.git
```2.下载依赖
```bash
cd ServerStatus/
go mod tidy -v
```3.编译,以`AMD64`架构为例
```bash
cd cmd/dashboard/
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -o server-dash -ldflags="-s -w"
```4.部署面板为系统服务
```bash
mkdir -p /opt/server-status/dashboard
mv server-dash /opt/server-status/dashboard/
cd ../..
cp resource/ /opt/server-status/dashboard/ -r
mkdir -p /opt/server-status/dashboard/data
cp script/config.yaml /opt/server-status/dashboard/data
cp script/server-dash.service /etc/systemd/system
```5.修改配置文件`/opt/server-status/dashboard/data/config.yaml`,注册服务并启动
```bash
systemctl enable server-dash
systemctl start server-dash
```
## 通知方式`#NG#` 是面板消息占位符,面板触发通知时会自动替换占位符到实际消息
Body 内容是`JSON` 格式的:**当请求类型为 FORM 时**,值为 `key:value` 的形式,`value` 里面可放置占位符,通知时会自动替换。**当请求类型为 JSON 时** 只会简进行字符串替换后直接提交到`URL`。
URL 里面也可放置占位符,请求时会进行简单的字符串替换。
参考下方的示例,非常灵活。
### 添加通知方式
- server 酱示例
- 名称:server 酱
- URL:`https://sc.ftqq.com/SCUrandomkeys.send?text=#NG#`
- 请求方式: `GET`
- 请求类型: 默认
- Body: 空- wxpusher 示例,需要关注你的应用
- 名称: wxpusher
- URL:`http://wxpusher.zjiecode.com/api/send/message`
- 请求方式: `POST`
- 请求类型: `JSON`
- Body: `{"appToken":"你的appToken","topicIds":[],"content":"#NG#","contentType":"1","uids":["你的uid"]}`- telegram 示例 [@haitau](https://github.com/haitau) 贡献
- 名称:telegram 机器人消息通知
- URL:`https://api.telegram.org/botXXXXXX/sendMessage?chat_id=YYYYYY&text=#NG#`
- 请求方式: `GET`
- 请求类型: 默认
- Body: 空
- URL 参数获取说明:botXXXXXX 中的 XXXXXX 是在 telegram 中关注官方 @Botfather ,输入/newbot ,创建新的机器人(bot)时,会提供的 token(在提示 Use this token to access the HTTP API:后面一行)这里 'bot' 三个字母不可少。创建 bot 后,需要先在 telegram 中与 BOT 进行对话(随便发个消息),然后才可用 API 发送消息。YYYYYY 是 telegram 用户的数字 ID。与机器人@userinfobot 对话可获得。