linux 监控系统资源-内存
监控内存使用量:
思路:使用free -m 提取相关数据,算出使用内存量输入到文件,并且每一次计算都与当前文件中的数据对比,大于文件中的数据则替换。保留当天最大内存使用量,每天发送邮件(可以单独写个发邮件的脚本)。脚本可以写到计划任务里多长时间执行一次。也可以在脚本中加上wheel循环后台启动
Mem行的total:系统总内存
-/+ buffers/cache行的used:实际使用内存
-/+ buffers/cache行的free:程序实际可调用内存
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jdk1.7.0_45/bin:/usr/java/jdk1.7.0_45/jre/bin:/usr/local/CCDTSoft/mvn_maven/bin:/root/bin DAYS=`date +"%Y%m%d"`free DATE=`date +"%Y-%m-%d--%H:%M:%S"` DATA_PATH=/usr/local/CCDTSoft/data/BullDog/COUNT/${DAYS} FILE=`hostname`_Maxfree.txt #总的内存 TOTAL=`free -m|grep Mem|awk '{print $2}'` #free -m 第二行的USER,实际已用内存 USED=`free -m|grep buffers/cache|awk '{print $3}'` #free -m 第二行的free,程序可调用实际内存 FREE=`free -m|grep buffers/cache|awk '{print $4}'` #百分比USED/TOTAL(实际已用内存百分比) USAGE_B=`awk 'BEGIN{printf "%.2f%\n",('$USED'/'$TOTAL')*100}'` if [ ! -d ${DATA_PATH} ];thenmkdir -p ${DATA_PATH} fi #每天第一次 统计创建统计文件并输入第一次的值,接下来的每一次比较文件中存在的值,如果大于已用内存的百分比则输出替换文件内容,保留最大的内存使用量数据 if [ ! -f ${DATA_PATH}/${FILE} ];thentouch ${DATA_PATH}/${FILE}echo -e "${FILE}\n当天最大内存使用情况:${DATE}\n总内存(m): ${TOTAL}\n内存实际使用量(m): ${USED}\n已用内存百分比(m): ${USAGE_B}\n---\n" > ${DATA_PATH}/${FILE}#echo "内存实际使用用量(m): ${USED}" >> ${DATA_PATH}/${FILE}#echo "已用内存百分比(m): ${USAGE_B}" >> ${DATA_PATH}/${FILE}elseif [ ${USED} -gt `cat ${DATA_PATH}/${FILE}|grep 内存实际使用量|awk '{print $2}'` ];thenecho -e "${FILE}\n当天最大内存使用情况:${DATE}\n总内存(m): ${TOTAL}\n内存实际使用量(m): ${USED}\n已用内存百分比(m): ${USAGE_B}\n---\n" > ${DATA_PATH}/${FILE}fi fi #mail -s "${DAYS}-主机nginxLoad-tomcat内存使用情况" @qq.com < ${DATA_PATH}/${FILE} #echo USAGE_B=$USAGE_B
效果图
有什么建议和需要改正的地方可以留言,谢谢
转载于:https://blog.51cto.com/qchanblog/1826336
linux 监控系统资源-内存相关推荐
- 监控linux内存,linux 监控系统资源-内存
监控内存使用量: 思路:使用free -m 提取相关数据,算出使用内存量输入到文件,并且每一次计算都与当前文件中的数据对比,大于文件中的数据则替换.保留当天最大内存使用量,每天发送邮件(可以单独写个发 ...
- linux 监控java内存_Linux下实用的JAVA内存泄露监控命令及工具
一.Linux 命令 1.jstack (linux下特有) 可以观察到jvm中当前所有线程的运行情况和线程当前状态 jstack 2083 输出内容如下: 2.jmap (linux下特有,也是很常 ...
- linux监控cpu内存磁盘网络使用率,linux服务器性能——CPU、内存、流量、磁盘使用率的监控...
4. 什么是AJAX 术语Ajax用来描述一组技术,它使浏览器可以为用户提供更为自然的浏览体验.在Ajax之前,Web站点强制用户进入提交/等待/重新显示范例,用户的动作总是与服务器的"思考 ...
- linux监控内存的工具,Linux 三个强大的系统资源监控工具
1.dstat dstat是取代vmstat,iostat和ifstat的一个强大的多功能系统资源统计生成工具. dstat语法格式:dstat [-afv] [options..] [delay [ ...
- Linux安装rpc监控系统资源
Linux安装rpc监控系统资源 1.rpc服务需rsh的支持,一般情况下rsh已安装.rpm -qa rsh查看. 2.右键另存为http://heanet.dl.sourceforge.net/s ...
- Linux虚拟内存介绍,以及malloc_stats和malloc_info 监控查看内存情况
Linux虚拟内存介绍,以及malloc_stats和malloc_info 监控查看内存情况 zzhongcy 2019-04-09 10:33:08 3106 已收藏 3 分类专栏: Linux ...
- linux平台关于内存,cpu,连接数,流量监控(一)
linux平台关于内存,cpu,连接数,流量监控(一) 本文为监控linux平台机器及进程cpu,内存,连接数,流量监控程序,其他平台请自适应. //.h/** Copyright (c/c++) & ...
- linux 监控网络IO、磁盘、CPU、内存
linux 监控网络IO.磁盘.CPU.内存 CPU:vmstat ,sar –u,top 磁盘IO:iostat –xd,sar –d,top 网络IO:iftop -n,ifstat,dstat ...
- AIX和LINUX主机 CPU 内存 磁盘使用率监控
AIX监控 磁盘使用率监控 df -g|grep -v Filesystem|grep -v proc|awk ' gsub(/%/,"",$4) {print $7 " ...
- Shell 脚本来监控 Linux 系统的内存
一.安装Linux下面的一个邮件客户端Msmtp软件(类似于一个Foxmail的工具) 1.下载安装:http://downloads.sourceforge.net - 206451&big ...
最新文章
- PPF(Point Pair Features)原理及实战技巧
- 联想笔记本电脑的F1至F12键盘问题。怎么设置才能不按FN就使用F1
- 关于数据预处理的7个重要知识点,全在这儿了!
- spring boot实现WebMvcConfigurer接口定制SpringMvc配置
- mysql 带宽测试工具_MySQL自带的性能压力测试工具mysqlslap详解
- 从「猜画小歌」,谈企业的「数据困惑」该何去何从?
- weblogic宕机crash问题解决分享
- 一个小小的flash
- 把计算机怎么连接手机的网络助手在哪里,怎么将手机网络通过USB共享给电脑
- JRebel激活教程
- matlab 求一元二次方程的根,如何用Matlab求一元二次方程式解的个数以及解
- 供应链拼图:拼合未来的全球经济
- linux shell完整程序,Linux Shell程序设计
- 进击的人工智能:从产品角度,深度解析「对话机器人」
- 【JAVAEE基础学习(16)】--简述ElasticSearch
- ORACLE几个关于工作日数的函数(原创)
- oracle dbms_metadata,DBMS_METADATA报错解决方法
- WMS系统学习之ModernWMS
- 2016.05.04,英语,《Vocabulary Builder》Unit 22
- Unity2019,2020安装教程