您当前的位置:首页 > 计算机 > 系统应用 > Linux

Linux获取服务器状态信息CPU,内存,磁盘使用率等 到钉钉消息

时间:02-01来源:作者:点击数:

通过Linux脚本发送服务器状态信息到钉钉消息,

主要流程

1、 钉钉添加机器人,获取webhook地址,添加关键词,就是发送给钉钉包含的词汇




2、编写shell发送脚本,Linux可以写成两个脚本这样比较方便修改,分别是发送消息postinfo.sh ,和获取信息的info.sh内容分别如下

postinfo.sh

#!/bin/bash
curl 'https://oapi.dingtalk.com/robot/send?access_token=这里根据自己的实际情况进行修改,其他不用动' \
   -H 'Content-Type: application/json; charset=UTF-8' \
   -d "
  {\"msgtype\": \"text\", 
    \"text\": {
        \"content\": \"
Server Info
$(bash info.sh)

        \"
     }
  }"

info.sh

#!/bin/bash
echo ------HostName--------------
hostname
echo ---------------IP----------------
ifconfig | grep addr | grep Bcast 
#centos getip
ip a | grep inet | grep brd | cut -d / -f 1
#通过curl获取出口IP
curl cip.cc | head -2
echo ---------------Date--------------
date "+%Y-%m-%d %H:%M:%S"
echo -------------Root-User-----------
cat /etc/passwd | grep :0: | cut -d : -f 1
echo -------------CPU-Info------------
cat /proc/cpuinfo | grep name | cut -d : -f 2 |uniq -c
vmstat -S m
sar -u 1 5
echo -------------Mem-Info------------
free -m
echo -------------Disk-Info-----------
df -Th /
df -Th /home
echo -------------Disk-List-----------
DiskList -l | grep "Disk /dev/sd"| awk '{print $2}'| cut -d : -f 1
echo -------------Disk-Healt----------
echo $DiskList
for i in `echo $DiskList` ; do echo $i ; eho $(smartctl -H $i | grep Status);done

3、本地测试脚本,根据实际情况进行修改,bash info.sh

4、确定获取信息脚本没有问题后,测试发送到钉钉的脚本,bash postinf.sh

5、添加计划任务 crontab -e

每天早上8点发送一次结果

* 8 * * * bash /目录/postinfo.sh

效果如图

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门