项目地址——https://github.com/iamydp/ServerMonitorBot
这个嘛,就是把旧代码换个血就可以接着用了,自己再添加点功能就更完美。原作者已经4年没有更新了,如果他能看到这个项目还在更新的话应该会很高兴(怎么感觉怪怪的
这个项目就是为了能够在telegram上查看服务器的资源占用情况,而不用打开网页/app,虽然现在很简陋,但以后会增加一管多和一键安装某些项目的功能。
功能:
命令
/stats
- 检查磁盘/CPU/内存使用情况(正在完善中)/shell
- 进入执行命令模式并返回结果/memgraph
- 绘制近一段时间的内存使用记录表/setmem
- 设置内存占用告警阈值,并在占用情况高于这个值时告警/setpoll
- 设置探测间隔(不少于10秒)- 检测内存使用情况并且在高于设定阈值时通过telegram发送告警消息
/stats
命令演示: Gif
/shell
命令演示:
/memgraph
命令演示: Gif
使用方法
所需环境
- Python 3+
- Telepot
- 确保Psutil是为Python3工作,而非2
确保
pip
是最新版本:
curl -O https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py
- 之后使用
pip install psutil
- 在Stackoverflow上也有相关问题的回答链接
sudo apt-get install python3-matplotlib
Bot key &
tokens.py
- 把token放在
tokens.py
里.tokens.py
只用来保存您的chat_id和bot token.不要随便定义/更改函数名.- 从@Bot Father新建机器人/获取tokenBot Father
- 克隆该仓库
在本地文件夹内新建文件
tokens.py
- 已经加入
.gitignore
豪华套餐,所以谁的key/token都不会提交上来将
telegrambot
后字符串换成自己的token
- 如: `telegrambot = "000000000:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
- 编者按:原readme中的确是这样写的,但原作者更新的时候可能忘了改了,这里直接vim编辑tokens.py_example再mv重命名去掉_example就可以了。
开始运行
python3 servstatsbot.py
将bot作为进程运行
参见文件:
servstatsbot.conf
- 根据文件内注释指示更改路径
- 将
servstatsbot.conf
放在/etc/init/
内用该命令启动进程:
start servstatsbot
- 之后,以下命令将可用:
start|stop|restart servstatsbot
- 如果进程崩溃将会自动重启
- 开机启动
设定一个管理员
在
tokens.py
中设定adminchatid
变量为chat_id(如果您的工具人是个公交车,参照如下方法).
adminchatid = [443355]
adminchatid = [443355, 55667788, 99884433]
怎么收藏这篇文章?
叼茂SEO.bfbikes.com