二维码
搬瓦工 locvps

此程序已在Github上开源,地址 https://github.com/uselibrary/systemMonitor

systemMonitor是一个基于Go语言的自托管轻量型服务器性能检测与告警软件。可以检测CPU、硬盘内存和流量的使用量,并可在超过(或恢复)设置的限制后,通过电报机器人发送通知。由于是go写的,所以单文件配合config.json和vnstat即可运行, 不需要其他依赖。

功能:

1. 监控CPU使用率,内存使用率(量),硬盘使用率(量),以及月带宽使用量。
2. 上述使用率(量)可以通过一个config.json文件自定义设置。
3. 当使用率(量)超过限制,或者从限制量以上恢复了下来,将通过tg机器人(自己的机器人,不用第三方)发送通知。
4. 基于go语言,只有单个程序,配合上述config.json,不需要第三方依赖。

安装方法
需要准备的事项
1. 事先准备Telegram Bot (即电报机器人)的密钥(token)和对话ID(chat id),教程可以参考这里:自建电报机器人/telegram bot实现消息推送 http://vpsqk.com/post/4021.html
2. 需要监控的硬盘的名称,如dev/sda1。具体可使用df -h查看,如下所示,/目录对应着/dev/vda1,则此服务器的硬盘是/dev/vda1

  1. Filesystem      Size  Used Avail Use% Mounted on

  2. udev            2.0G     0  2.0G   0% /dev

  3. tmpfs           394M  484K  393M   1% /run

  4. /dev/vda1        39G  2.8G   34G   8% /

  5. tmpfs           2.0G     0  2.0G   0% /dev/shm

  6. tmpfs           5.0M     0  5.0M   0% /run/lock

  7. tmpfs           394M     0  394M   0% /run/user/1000

复制代码



3. 阈值设置细则。配置文件为/usr/local/systemMonitor/config.json,安装过程中将自动生成,也可以随后手动修改。安装过程中会要求输入:

  1. 请输入服务器名称: # 名称用于区别服务器,推送消息的时候也会使用

  2. 请输入Telegram Bot Token: # 即上述的密钥(token)

  3. 请输入Telegram Chat ID: # 即上述的对话ID(chat id)

  4. 请输入磁盘名称: # 即上述的硬盘的名称

  5. 请输入CPU使用率阈值: # 单个CPU的理论最大值是1.00,如果无负载则是0.00,一般推荐0.20

  6. 请输入磁盘使用率阈值: # 硬盘使用率,如果输入50,当硬盘使用率超过50%则会告警

  7. 请输入网络使用率阈值: # 月带宽使用率,单位为GB,如果以前没有安装过vnstat,则统计信息从安装此软件开始计算。

  8. 请输入内存使用率阈值: # 内存使用率,如果输入50,当内存使用率超过50%则会告警

复制代码



以下是config.json文件的示例

  1. {

  2. "name": "demo.domain.com",

  3. "telegram": {

  4.      "token": "123456789:ABCD45-VCSIDUIC78VS78RN",

  5.      "chat_id": "123456789"

  6. },

  7. "disk": "dev/sda1",

  8. "status": {

  9.      "cpu": 0.2,

  10.      "diskpercentage": 50,

  11.      "network": 500,

  12.      "memorypercentage": 50

  13. }

  14.     }

复制代码



4. 此程序由crontab定时运行,每10分钟检查一次。修改检查频率,可以手动编辑/var/spool/cron/crontabs/root文件。

一键安装

  1. wget --no-check-certificate -O install.sh https://raw.githubusercontent.com/uselibrary/systemMonitor/main/install.sh && chmod +x install.sh && bash install.sh

复制代码



如果需要卸载,则运行

  1. wget --no-check-certificate -O uninstall.sh https://raw.githubusercontent.com/uselibrary/systemMonitor/main/uninstall.sh && chmod +x uninstall.sh && bash uninstall.sh

复制代码
locvps
评论专区
  • 昵 称必填
  • 邮 箱必填
  • 网 址选填
◎已有 0 人评论
BudgetVM
作者介绍
转载大师

转载大师

转载大师作为本站编辑,主要负责把优秀的文章转载至此。如果您认为本文侵犯了您的版权信息,请与转载大师联系修正。
80vps henghost
budgetvm sugarhosts
二维码

分享:

支付宝

微信