前言
前几天,本来想在路由器上装个tty228大大的luci-app-serverchan进行状态监控,结果发现其是基于ARM架构的 :cry: ,而某粗粮R3G的MT7621是MIPS架构的,于是乎,就根据其原理写了个理论上openwrt通用的监控脚本 :cool:
主要功能
- 自动获取路由ip/ipv6地址
- 支持双拨显示
- 设备型号
- 设备重启自动推送
- 设备各接口流量使用情况
- CPU 负载、软中断、内存使用率、平均负载 显示
注意:此脚本是针对pppoe拨号方式编写的,DHCP、静态类上网方式可能会显示错误,请见谅!
获取SCKEY
代码
将SCKEY改成你的即可
SCKEY=SCU104309T2b02eb37b57d7f96abcd60a95bb748e15f008e234a049
cpu=$(top -n 1 |awk NR==2 |awk '{print $8}'| sed 's/%//')
sirq=$(top -n 1 |awk NR==2 |awk '{print $14}')
let cpu_used=100-$cpu
addr="https://sc.ftqq.com/$SCKEY.send"
title="Route Status"
text="系统负载:"
load=$(cat /proc/loadavg)
drive=$(cat /proc/cpuinfo |grep 'machine' | sed s/[[:space:]]//g |sed "s:machine::" |sed 's/://')
memry="内存信息:"
memto=$(cat /proc/meminfo | grep MemTotal)
memfree=$(cat /proc/meminfo | grep MemFree)
memava=$(cat /proc/meminfo | grep MemAvailable)
wan=$(ifconfig pppoe-wan |awk NR==2 |awk -F '[-:]+' '{print $2}'|sed 's/P//')
lan=$(ifconfig br-lan |awk NR==2 |awk -F '[-:]+' '{print $2}'|sed 's/P//'|sed 's/Bcast//')
lan_6=$(ifconfig br-lan |awk NR==3 |sed 's/Scope:Global//' |sed s/[[:space:]]//g |sed 's/inet6addr://')
lan2_6=$(ifconfig br-lan |awk NR==5 |sed 's/Scope:Global//' |sed s/[[:space:]]//g |sed 's/inet6addr://')
lan_rxtx=$(ifconfig br-lan |awk NR==10)
wan_6=$(ifconfig pppoe-wan |awk NR==3 |sed 's/Scope:Link//' |sed s/[[:space:]]//g |sed 's/inet6addr://')
wan2_6=$(ifconfig pppoe-WAN2 |awk NR==3 |sed 's/Scope:Link//' |sed s/[[:space:]]//g |sed 's/inet6addr://')
wan2=$(ifconfig pppoe-WAN2 |awk NR==2|awk -F '[-:]+' '{print $2}'|sed 's/P//' )
type=$(ifconfig pppoe-wan |awk NR==1 |sed 's/Link encap//' |sed 's/://' |sed 's/pppoe-wan//' |sed s/[[:space:]]//g)
type2=$(ifconfig pppoe-WAN2 |awk NR==1 |sed 's/Link encap//' |sed 's/://' |sed 's/pppoe-WAN2//' |sed s/[[:space:]]//g)
type3=$(ifconfig br-lan |awk NR==1 |sed 's/Link encap//' |sed 's/://' |sed 's/br-lan//' |sed s/[[:space:]]//g |sed 's/HWaddr//' |sed 's/34:CE:00:65:06:44//')
wan_rxtx=$(ifconfig pppoe-wan |awk NR==8)
wan2_rxtx=$(ifconfig pppoe-WAN2 |awk NR==8)
curl -d "text=$title&desp=
系统信息
--
设备名称:
$drive
CPU使用率: $cpu_used%
软中断: $sirq
系统负载:
$load
$memry
$memto
$memfree
$memava
网络信息
--
###WAN:
链接类型:$type
IPv4地址:$wan
IPv6地址:
$wan_6
发送接收量:
$wan_rxtx
###WAN2:
链接类型:$type2
IPv4地址:$wan2
IPv6地址:
$wan2_6
发送接收量:
$wan2_rxtx
###LAN:
链接类型:$type3
IPv4地址:$lan
IPv6地址:
$lan_6
$lan2_6
发送接收量:
$lan_rxtx
" $addr > /dev/null 2>&1 /send text to wechat
End
本文写的比较急,如有不完善的地方请见谅! :grin:
Comments | NOTHING