监控系统资源加邮件提醒

#!/usr/bin/bash
echo "##########关于cpu##########"
vmstat &>/dev/null
if [ $? -ne 0 ];then
echo "vmstat command is not found,please install it!"
yum install -y procps
echo "命令已安装!请重新执行该命令"
exit 0
fi
#us 用户使用cpu花费时间; sy 系统使用cpu花费时间;id cpu空闲时间id=us+sy;wa cpu耗费等待io上时间
cpu_us=vmstat | awk ‘{print $13}‘ | sed -n ‘$p‘
cpu_sy=vmstat | awk ‘{print $14}‘ | sed -n ‘$p‘
cpu_id=vmstat | awk ‘{print $15}‘ | sed -n ‘$p‘
cpu_wa=vmstat | awk ‘{print $16}‘ | sed -n ‘$p‘
cpu_sum=$(($cpu_us+$cpu_sy))
echo "cpu空闲时间(id):$cpu_id"
echo "cpu等待时间:"$cpu_wa#!/usr/bin/bash
echo "##########关于cpu##########"
vmstat &>/dev/null
if [ $? -ne 0 ];then
echo "vmstat command is not found,please install it!"
yum install -y procps
echo "命令已安装!请重新执行该命令"
exit 0
fi
#us 用户使用cpu花费时间; sy 系统使用cpu花费时间;id cpu空闲时间id=us+sy;wa cpu耗费等待io上时间
cpu_us=vmstat | awk ‘{print $13}‘ | sed -n ‘$p‘
cpu_sy=vmstat | awk ‘{print $14}‘ | sed -n ‘$p‘
cpu_id=vmstat | awk ‘{print $15}‘ | sed -n ‘$p‘
cpu_wa=vmstat | awk ‘{print $16}‘ | sed -n ‘$p‘
cpu_sum=$(($cpu_us+$cpu_sy))
echo "cpu空闲时间(id):$cpu_id"
echo "cpu等待时间:"$cpu_wa
echo "cpu 总共用时(us+sy): $cpu_sum"
if [ $cpu_sum -ge 70 ];then
echo "your cpu utilization is $cpu_sum."|mail -s "cpu utilization" [email protected]
fi
echo "###########关于内存#############"
free &>/dev/null
if [ $? -ne 0 ];then
echo "free command is not found,please install it!"
exit 0
fi
memory=free -m|grep Mem|awk ‘{print "使用的内存:"$2"M,还剩余内存"$3"M,所以内存使用率为:"$3/$2*100"%"}‘
echo $memory
memory_1=free -m|grep Mem|awk ‘{print ""$3/$2*100""}‘
if [ $? -ge 80 ];then
echo "your memory utilization is $memory_1"|mail -s "memory error" [email protected]
fi
echo "#############关于磁盘############"
df &>/dev/null
if [ $? -ne 0 ];then
echo "free command is not found,please install it!"
exit 0
fi
disk_0=df -h|sed -n ‘3,5p‘|awk ‘{print $(NF-1)}‘
disk=df -h|sed -n ‘3,5p‘|awk ‘{print $(NF-1)}‘|cut -b 1
echo $disk_0
for i in $disk
do
if [ $i -ge 70 ];then
echo "your disk utilization is %i"|mail -s "disk error" [email protected]
fi
done
echo "cpu 总共用时(us+sy): $cpu_sum"
if [ $cpu_sum -ge 70 ];then
echo "your cpu utilization is $cpu_sum."|mail -s "cpu utilization" [email protected]
fi
echo "###########关于内存#############"
free &>/dev/null
if [ $? -ne 0 ];then
echo "free command is not found,please install it!"
exit 0
fi
memory=free -m|grep Mem|awk ‘{print "使用的内存:"$2"M,还剩余内存"$3"M,所以内存使用率为:"$3/$2*100"%"}‘
echo $memory
memory_1=free -m|grep Mem|awk ‘{print ""$3/$2*100""}‘
if [ $? -ge 80 ];then
echo "your memory utilization is $memory_1"|mail -s "memory error" [email protected]
fi
echo "#############关于磁盘############"
df &>/dev/null
if [ $? -ne 0 ];then
echo "free command is not found,please install it!"
exit 0
fi
disk_0=df -h|sed -n ‘3,5p‘|awk ‘{print $(NF-1)}‘
disk=df -h|sed -n ‘3,5p‘|awk ‘{print $(NF-1)}‘|cut -b 1
echo $disk_0
for i in $disk
do
if [ $i -ge 70 ];then
echo "your disk utilization is %i"|mail -s "disk error" [email protected]
fi
done



监控系统资源加邮件提醒

原文地址:http://blog.51cto.com/13475803/2059357

时间: 2024-11-02 19:08:40

监控系统资源加邮件提醒的相关文章

shell脚本-监控及邮件提醒

首先写一个邮件提醒python文件 #!/usr/bin/python # -*- coding: UTF-8 -*- import sys import smtplib import email.mime.multipart import email.mime.text server = 'smtp.163.com' port = '25' def sendmail(server,port,user,pwd,msg): smtp = smtplib.SMTP() smtp.connect(se

Linx监控分享--磁盘空间监控+邮件提醒

分享第一个监控脚本,挂载点磁盘空间使用监控:如果使用空间达到了75%则开始报警,发送告警邮件. 在手机上安装网易的邮件客户端,就可以达到实时提醒的效果. 关于mail的配置,见之前的文章:http://blog.csdn.net/rookie_ceo/article/details/46559195 #!/bin/sh source /etc/profile IP=`/sbin/ifconfig|sed -n '/inet addr/s/^[^:]*:\([0-9.]\{7,15\}\) .*/

Linx监控分享--网络状态监控+邮件提醒

网络状态监控 网络状态:netstat 各个状态的总计,详情:以及重点端口的详细连接情况(22,25,80,3306,8080),打印客户端连接数最多的ip. 邮件报告当前状态. 在手机上安装网易的邮件客户端,就可以达到实时提醒的效果. 关于mail的配置,见之前的文章:http://blog.csdn.net/rookie_ceo/article/details/46559195 #!/bin/sh source /etc/profile IP=`/sbin/ifconfig|sed -n '

Linx监控分享--重点进程监控(mysqld)+邮件提醒

重点进程监控 mysqld:进程退出了,报警.没有退出则监控mysqld的(cpu(>=100%)|| mem(>=80%))开始提醒,同时收集和分析mysql状态信息:连接数(>=max_connections * 0.8)开始提醒:打开的句柄数(>=8192*0.8?)开始提醒. 待完善... 如果是单机多实例的话,只需要增加一个for循环就好了. 在手机上安装网易的邮件客户端,就可以达到实时提醒的效果. 关于mail的配置,见之前的文章:http://blog.csdn.ne

根据进程名监控进程(邮件提醒)

背景:在window server系统中的进行监控udp端口的时候发现, 每次进程重启后端口都会发生变化,于是尝试放弃监控端口改用监控进程名的想法. bat ::Final interpretation is owned by chenglee ::Thankyou ::温馨提示:如果放在win启动计划中,如需要就开启第六行代码, ::作用是检测完马上自动关闭检测脚本待下次运行, 如果不开启就是检测完停留等待手动关闭, ::作用:窗口叠加 ::@echo off<nul 3>nul @echo

如何监控系统资源

---恢复内容开始--- 使用Loadrunner进行性能测试, 可以通过监控系统指标, 来分析系统瓶颈. 我们可以使用两种方法来添加性能指标, 一是使用系统自带性能监控, 二可以使用LoadRunner来实现. 如何使用系统自带的工具来监控性能指标. 1. 找到管理工具-性能监视器 2. 找到数据收集器-用户定义-右键新建-数据收集器- 选择手动创建- 勾选性能计数器/事件跟踪数据- 点击添加, 进入指标添加页面 - 点击确定. 这样就可以通过系统自带的工具监控系统性能指标了. 3. 在添加指

在LAMP架构中部署zabbix监控系统及邮件报警机制

初步了解zabbix: Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题.是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.被监控对象只要支持SNMP协议或者运行zabbix_agents代理程序即可.agent端:主机通过安装agent方式采集数据.server端:通过收集agent发送的数据,写入数据库(MySQL,ORACLE等),再通过php+apache在web前端展示. SNMP:

查询磁盘和监控系统资源

查询磁盘和监控系统资源 查询磁盘分区状态 lsblk(list block device)命令可以查看本系统下所有磁盘和磁盘内的分区信息: 可以看到当前系统有sr0.sda装置,sda下有三个分区分别是123,输出信息的含义是: NAME是装置的文件名,MAJ:MIN是主要和次要装置代码,RM代表是否为可卸除装置,SIZE是容量,RO代表是否为只读装置,TYPE是装置类型,rom是只读存储器,disk是磁盘,part是分区:MOUNTPOINT为挂载点.·· lsblk -ip 完整路径的装置文

Linux安装rpc监控系统资源

1.rpc服务需rsh的支持,一般情况下rsh已安装.rpm -qa rsh查看.2.右键另存为http://heanet.dl.sourceforge.net/sourceforge/rstatd/rpc.rstatd-4.0.1.tar.gz下载rpc.rstatd-4.0.1.tar.gz.3.执行以下命令解压和安装tar zxvf rpc.rstatd-4.0.1.tar.gzcd rpc.rstatd-4.0.1./configure   //配置make          //编译m