监控cpu、内存 <shell>

获取cpu、内存结果

pid=$1  #获取进程pid
echo $pid
interval=1  #设置采集间隔
while true
do
    echo $(date +"%y-%m-%d %H:%M:%S") >> proc_memlog.txt
    cat  /proc/$pid/status|grep -e VmRSS >> proc_memlog.txt    #获取内存占用
    cpu=`top -b -n 1 -p $pid|tail -2|head -1|awk ‘{ssd=NF-3} {print $ssd}‘`    #获取cpu占用
    echo "Cpu: " $cpu >> proc_memlog.txt
    echo $blank >> proc_memlog.txt
    sleep $interval
done

结果排序

cat proc_memlog.txt |grep Cpu |awk ‘{print $2}‘ | sort -nbr

此处cpu是单核的cpu大小,因此超过100%的意思就是跑满了单核。

逻辑核和物理核

物理核就是一般说的几核cpu,其为物理核心。一般都是2、4、8核。服务器一般为32核。利用cat /proc/cpuinfo查看物理核。

逻辑核则是因超线程技术,将物理核进行虚拟。当计算机没有开启超线程时,逻辑CPU的个数就是计算机的核数。而当超线程开启后,逻辑CPU的个数是核数的两倍。

任务绑定cpu

taskset -c 0,10 ./bind_core

原文地址:https://www.cnblogs.com/lcamry/p/9982515.html

时间: 2024-11-08 23:12:55

监控cpu、内存 <shell>的相关文章

监控cpu内存磁盘,并实现邮件报警

1 #!/bin/bash 2 #获取当前时间 3 now=`date -u -d"+8 hour" +'%Y-%m-%d %H:%M:%S'` 4 #cpu使用阈值 5 cpu_warn='5' 6 #mem空闲阈值 7 mem_warn='1' 8 #disk使用阈值 9 disk_warn='5' 10 #获取主机IP,下条命令也可以获取 11 hostip=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub

利用shell监控cpu、磁盘、内存使用率

利用shell监控cpu.磁盘.内存使用率,达到警报阈值发邮件进行通知 并配合任务计划,即可及时获取报警信息 #!/bin/bash ############################################## #Author: Liuzhengwei - [email protected] #QQ:1135960569 #Last modified: 2017-04-19 21:50 #Filename: jiankong.sh #Description:  #########

Linux shell 脚本监控cpu,内存,硬盘,网络,是否存活

写脚本的背景:脚本实现简单的监控,而不需要用非常的重的监控软件完成. 脚本如下 #!/bin/sh # 脚本放入到/usr/local/bin # chmod 755 check_server.sh # crontab 中添加 source /etc/bashrc #------监控阈值 DISK_space_warn=90 CPU_load_warn=5 CPU_use_warn=50 MEM_use_warn=95 #SWAP_use_warn=50 Net_SYN_count_warn=2

Shell脚本监控CPU、内存和硬盘利用率

1.监控CPU利用率(通过vmstat工具) #!/bin/bash#====================================================# Author: lizhenliang - EMail:[email protected]# Create Date: 2015-02-01# Description: cpu utilization monitor# blog:lizhenliang.blog.51cto.com#===================

linux系统CPU,内存,磁盘,网络流量监控脚本

前序 1,#cat /proc/stat/ 信息包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累积到当前时刻 2,#vmstat –s 或者#vmstat 虚拟内存统计 3, #cat /proc/loadavg 从系统启动开始到当前累积时刻 4, #uptime 系统运行多长时间 5, #mpstat CPU的一些统计信息 6, # 一,linux系统CPU,内存,磁盘,网络流量监控脚本 [作者:佚名来源:不详时间:2010-7-6 [我来说两句大中小] cme.sh网络流量监

shell 监控cpu,memory,load average

shell 监控cpu,memory,load average,记录到log,当负载压力时,发电邮通知管理员. 实现原理: 1.获取cpu,memory,load average的数值 2.判断数值是否超过自定义的范围,例如(CPU>90%,Memory<10%,load average>2) 3.如数值超过范围,发送电邮通知管理员.发送有时间间隔,每小时只会发送一次. 4.将数值写入log. 5.设置crontab 每30秒运行一次. #!/bin/bash # 系统监控,记录cpu.

Linux--shell监控CPU和内存

************************************************************************************************* #! /bin/bash #By [email protected] t=`date | awk '{print $4}' |awk -F ':' '{print $1$2$3}'` d=`date +%m/%d/%Y  |  awk -F '/' '{print $1$2}'` memfile=/ho

一个统计 CPU 内存 硬盘 使用率的shell脚本

一个统计 CPU 内存 硬盘 使用率的shell脚本,供大家学习参考 #!/bin/bash #This script is use for describle CPU Hard Memery Utilization total=0 idle=0 system=0 user=0 nice=0 mem=0 vmexec=/usr/bin/vmstat which sar > /dev/null 2>&1 if [ $? -ne 0 ] then ver=`vmstat -V | awk

监控CPU(二)

常见的监控CPU的工具基本的就是top mpstat sar vmstat(上下文切换/CPU数目是否够).再有就是去看/proc/里边的文件信息了,因为里边记录系统运行时刻的东西,牛叉的就是nmon AIX的监控工具. sar使用请参照:http://www.chinaz.com/server/2013/0401/297942.shtml top top - 10:30:11 up 46 min,  3 users,  load average: 0.10, 1.00, 1.00 Tasks:

zabbix管理四之监控cpu的负载

监控cpu的负载 分析: 安装完zabbix后,在Template OS Linux这个模板下面默认有监控cpu负载的触发器,但是这个默认的触发器是以cpu负载的个数为触发值的,由于agent客户机每台的cpu核数是不一样的,所以,以负载的个数为触发值不是很好,下面我设置的触发值是cpu负载占cpu核数的百分比 步骤: 1.(agent端) mkdir -p /etc/zabbix/itemscripts         (创建一个脚本目录,所有的zabbix agent的脚本都放在这里,方便管