精华内容
下载资源
问答
  • 在没有nagios监控软件的情况下,只要服务器能上互联网,就可通过发邮件的方式来提醒管理员系统负载与CPU占用的使用情况。 一、安装linux下面的一个邮件客户端msmtp软件(类似于一个foxmail的工具)  1、下载安装:  ...
  • 下面小编就为大家带来一篇Linux监控cpu以及内存使用情况之top命令(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • NULL 博文链接:https://onlyor.iteye.com/blog/1697822
  • Linux+性能监控CPU&内存&IO监控Shell脚本 #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "` echo "IP地址:"$IP # 获取cpu总...

    Linux+性能监控之CPU&内存&IO监控Shell脚本

    #!/bin/bash
    # 获取要监控的本地服务器IP地址
    IP=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "`
    echo "IP地址:"$IP
    
    # 获取cpu总核数
    cpu_num=`grep -c "model name" /proc/cpuinfo`
    echo "cpu总核数:"$cpu_num
    
    # 1、获取CPU利用率
    # 获取用户空间占用CPU百分比
    cpu_user=`top -b -n 1 | grep Cpu | awk '{print $2}' | cut -f 1 -d "%"`
    echo "用户空间占用CPU百分比:"$cpu_user
    
    # 获取内核空间占用CPU百分比
    cpu_system=`top -b -n 1 | grep Cpu | awk '{print $3}' | cut -f 1 -d "%"`
    echo "内核空间占用CPU百分比:"$cpu_system
    
    # 获取空闲CPU百分比
    cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $5}' | cut -f 1 -d "%"`
    echo "空闲CPU百分比:"$cpu_idle
    
    # 获取等待输入输出占CPU百分比
    cpu_iowait=`top -b -n 1 | grep Cpu | awk '{print $3}' | cut -f 1 -d "%"`
    echo "等待输入输出占CPU百分比:"$cpu_iowait
    
    #2、获取CPU上下文切换和中断次数
    # 获取CPU中断次数
    cpu_interrupt=`vmstat -n 1 1 | sed -n 3p | awk '{print $11}'`
    echo "CPU中断次数:"$cpu_interrupt
    
    # 获取CPU上下文切换次数
    cpu_context_switch=`vmstat -n 1 1 | sed -n 3p | awk '{print $12}'`
    echo "CPU上下文切换次数:"$cpu_context_switch
    
    #3、获取CPU负载信息
    # 获取CPU15分钟前到现在的负载平均值
    cpu_load_15min=`uptime | awk '{print $11}' | cut -f 1 -d ','`
    echo "CPU 15分钟前到现在的负载平均值:"$cpu_load_15min
    
    # 获取CPU5分钟前到现在的负载平均值
    cpu_load_5min=`uptime | awk '{print $10}' | cut -f 1 -d ','`
    echo "CPU 5分钟前到现在的负载平均值:"$cpu_load_5min
    
    # 获取CPU1分钟前到现在的负载平均值
    cpu_load_1min=`uptime | awk '{print $9}' | cut -f 1 -d ','`
    echo "CPU 1分钟前到现在的负载平均值:"$cpu_load_1min
    
    # 获取任务队列(就绪状态等待的进程数)
    cpu_task_length=`vmstat -n 1 1 | sed -n 3p | awk '{print $1}'`
    echo "CPU任务队列长度:"$cpu_task_length
    
    #4、获取内存信息
    # 获取物理内存总量
    mem_total=`free | grep Mem | awk '{print $2}'`
    echo "物理内存总量:"$mem_total
    
    # 获取操作系统已使用内存总量
    mem_sys_used=`free | grep Mem | awk '{print $3}'`
    echo "已使用内存总量(操作系统):"$mem_sys_used
    
    # 获取操作系统未使用内存总量
    mem_sys_free=`free | grep Mem | awk '{print $4}'`
    echo "剩余内存总量(操作系统):"$mem_sys_free
    
    # 获取应用程序已使用的内存总量
    mem_user_used=`free | sed -n 3p | awk '{print $3}'`
    echo "已使用内存总量(应用程序):"$mem_user_used
    
    # 获取应用程序未使用内存总量
    mem_user_free=`free | sed -n 3p | awk '{print $4}'`
    echo "剩余内存总量(应用程序):"$mem_user_free
    
    
    # 获取交换分区总大小
    mem_swap_total=`free | grep Swap | awk '{print $2}'`
    echo "交换分区总大小:"$mem_swap_total
    
    # 获取已使用交换分区大小
    mem_swap_used=`free | grep Swap | awk '{print $3}'`
    echo "已使用交换分区大小:"$mem_swap_used
    
    # 获取剩余交换分区大小
    mem_swap_free=`free | grep Swap | awk '{print $4}'`
    echo "剩余交换分区大小:"$mem_swap_free
    
    #5、获取磁盘I/O统计信息
    echo "指定设备(/dev/sda)的统计信息"
    # 每秒向设备发起的读请求次数
    disk_sda_rs=`iostat -kx | grep sda| awk '{print $4}'`
    echo "每秒向设备发起的读请求次数:"$disk_sda_rs
    
    # 每秒向设备发起的写请求次数
    disk_sda_ws=`iostat -kx | grep sda| awk '{print $5}'`
    echo "每秒向设备发起的写请求次数:"$disk_sda_ws
    
    # 向设备发起的I/O请求队列长度平均值
    disk_sda_avgqu_sz=`iostat -kx | grep sda| awk '{print $9}'`
    echo "向设备发起的I/O请求队列长度平均值"$disk_sda_avgqu_sz
    
    # 每次向设备发起的I/O请求平均时间
    disk_sda_await=`iostat -kx | grep sda| awk '{print $10}'`
    echo "每次向设备发起的I/O请求平均时间:"$disk_sda_await
    
    # 向设备发起的I/O服务时间均值
    disk_sda_svctm=`iostat -kx | grep sda| awk '{print $11}'`
    echo "向设备发起的I/O服务时间均值:"$disk_sda_svctm
    
    # 向设备发起I/O请求的CPU时间百分占比
    disk_sda_util=`iostat -kx | grep sda| awk '{print $12}'`
    echo "向设备发起I/O请求的CPU时间百分占比:"$disk_sda_util
    
    

    转载自:https://www.cnblogs.com/shouke/p/10157834.html

    展开全文
  • CPU-MEM-monitor:一个简单的脚本,用于记录一段时间内Linux CPU内存使用情况(使用top或pidstat命令),并输出Excel或OpenOfficeCalc友好的报告
  • TOP命令是Linux下一个实时的、交互式的,对操作系统整体监控的命令,可以对CPU内存、进程监控。是Linux下最常见的监控命令。 通常使用top命令,我们主要关注一下这些数据: user:当前登录用户数 load ...

    top命令

    TOP命令是Linux下一个实时的、交互式的,对操作系统整体监控的命令,可以对CPU、内存、进程监控。是Linux下最常见的监控命令。

    在这里插入图片描述
    通常使用top命令,我们主要关注一下这些数据:

    • user:当前登录用户数

    • load average:我们从上方图中可以看到,load average 中分别有三个值,这三个值分别表示在过去1分钟、5分钟、15分钟的系统负载,即任务队列的平均长度。(在我们业内有个规范,load average最好不要大于Cpu的核数,否则系统都超负载了)

    • Task:102 total 进程总数

      1、running 正在运行的进程数
      2、sleeping 睡眠的进程数
      3、 stopped 停止的进程数
      4、 zombie 僵尸进程数
      
    • %Cpu(s): 31.2% us 用户空间占用 CPU 百分比

      1、 sy:内核空间占用 CPU 百分比,通常来说,us(用户)高于sy(系统),会比较好,毕竟我们的操作系统主要还是给用户用的。
      2、 ni: 用户进程空间内改变过优先级的进程占用 CPU 百分比
      3、	id:空闲的CPU百分比(CPU使用率,主要关注这个数据)
      4、	wa:等待输入输出的 CPU 时间百分比(IOwait,通常这个较高的话,则意味这个网络IO或者磁盘IO存在一定的问题,需要进一步排查)
      5、 hi:硬中断
      6、 si:软中断
      

      这里cpu统计的是整个cup的平均数据,因为我们cpu有很多核,如果我们想要看每个核的cpu数据,可以按数字1,查看具体的cpu数据,这里也可以看到我当前的Liunx系统是2核的,所以有两条数据
      在这里插入图片描述
      这里注意,很多人在看cpu使用率的时候,以为达到100%,cpu就满负荷了,但其实不是的,实际工作中,经常会出现cpu大于100%的情况,这里cpu主要是根据你系统的核数也决定的,比如你当前的操作系统是8核的,那么cpu可以高达800%。

    内存监控 - free

    free 命令可以查看当前系统内容的使用情况

    在这里插入图片描述

    • free -m: 以MB为单位显示系统内存的使用情况,同理,也可以使用 -k, -g等其他的单位显示
    • free 命令从两个诶度统计了内存的使用情况
      1、第一行Mem:从操作系统角度统计了内存的total、used、free、buffers、cached、available
      2、第二行 Swap: 从应用程序角度统计了内存的total、used、free、buffers、cached、available

    buffer 和 cache

    两者都是linux下的缓存机制,但是其中buffer为写操作的缓存,cache为读操作的缓存。

    swap
    交换空间,磁盘上的一块空间,当前系统内存不足时,会使用交换空间,通常情况下不会。

    通常内存的判断标准为使用内存不能大于90%,我们可以用avaliable / total 来计算使用率。

    磁盘IO监控 - iostat

    在这里插入图片描述

    iostat -x -k 1

    • -x:展示磁盘的扩展信息
    • -k:以k为单位展示磁盘数据
    • 1:没1秒刷新一次数据

    展示结果

    • unti:磁盘IO的使用率,单位%,反应磁盘的繁忙程度,上限100%
    • r/s:每秒读请求数
    • w/s:每秒写请求数
    • rkb:每秒写磁盘的字节数
    • wkb:每秒读磁盘的字节数

    磁盘我们主要关注磁盘的读写率,但是通常我们通过磁盘读写率,并不能看出来磁盘是否有问题,因为有写磁盘性能较好,即使他的读写率较高,但是对于磁盘来讲并没有什么问题,相反有些磁盘读写率较低,相同的读写率,磁盘的性能存在差异,因此我们需要通过 %until,去看到磁盘IO的使用的百分比。建议通常不要超出80%

    磁盘空间监控 - df

    df命令可以查看当前系统磁盘空间的使用情况

    在这里插入图片描述

    磁盘速度测试

    dd if=/dev/zero of=/home/ddtest bs=8k count=100000 oflag=direct
    

    在这里插入图片描述

    综合监控工具 - vmstat

    vmstat 命令是最常见的 Linux/Unix 监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的 CPU 使用率,内存使用,虚拟内存 交换情况,IO 读写情况。
    这个命令是我查看 Linux/Unix 最喜爱的命令,一个是 Linux/Unix 都支持,二是相比 top,我可以看到整个机器的 CPU,内存,IO 的使用情况,而不是单单看到各个进程的 CPU 使用率和内存使用率(使用场景不一样)。

    在这里插入图片描述
    上方 vmstat 1,表示采集每秒的数据。下面我们来看看每个数据的具体含义。

    • r :表示运行队列(就是说多少个进程真的分配到 CPU),我测试的服务器目前 CPU 比较空闲,没什么程序在跑,当这个值超过了 CPU 数目,就会出现 CPU 瓶颈 了。这个也和 top 的负载有关系,一般负载超过了 3 就比较高,超过了 5 就高,超过了 10 就不正常了,服务器的状态很危险。top 的负载类似每秒的运行队 列。如果运行队列过大,表示你的 CPU 很繁忙,一般会造成 CPU 使用率很高。
    • b :表示阻塞的进程,这个不多说,进程阻塞,大家懂的。
    • swpd: 虚拟内存已使用的大小,如果大于 0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器。
    • free :空闲的物理内存的大小
    • Linux/Unix: 系统是用来存储,目录里面有什么内容,权限等的缓存
    • cache :直接用来记忆我们打开的文件,给文件做缓冲,我本机大概占用 300 多 M(这里是 Linux/Unix 的聪明之处,把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高 程序执行的性能,当程序使用内存时,buffer/cached 会很快地被使用。)
    • si :每秒从磁盘读入虚拟内存的大小,如果这个值大于 0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。我的机器内存充裕,一切正常。
    • so :每秒虚拟内存写入磁盘的大小,如果这个值大于 0,同上。
    • bi :块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是 1024byte,我本机上没什么 IO 操作,所以一直是 0,但是我曾在处理拷贝大量数据(2-3T)的机器上看过可以达到 140000/s,磁盘写入速度差不多 140M 每秒
    • bo :块设备每秒发送的块数量,例如我们读取文件,bo 就要大于 0。bi 和 bo 一般都要接近0,不然就是 IO 过于频繁,需要调整。
    • in :每秒 CPU 的中断次数,包括时间中断
    • cs :每秒上下文切换次数,例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,这个值要越小越好,太大了,要考虑调低线程或者进程的 数目,例如在apache 和 nginx 这种 web 服务器中,我们一般做性能测试时会进行几千并发甚至几万并发的测试,选择 web 服务器的进程可以由进程或 者线程的峰值一直下调,压测,直到 cs 到一个比较小的值,这个进程和线程数就是比较合适的值了。系统调用也是,每次调用系统函数,我们的代码就会进入内核 空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数。上下文切换次数过多表示你的 CPU 大部分浪费在上下文切换,导致 CPU 干正经事的 时间少了,CPU 没有充分利用,是不可取的。
    • us :用户 CPU 时间,我曾经在一个做加密解密很频繁的服务器上上,可以看到 us 接近 100,r运行队列达到 80(机器在做压力测试,性能表现不佳)。
    • sy :系统 CPU 时间,如果太高,表示系统调用时间长,例如是 IO 操作频繁。
    • id 空闲 CPU 时间,一般来说,id + us + sy = 100,一般我认为 id 是空闲 CPU 使用率,us 是用户 CPU 使用率,sy 是系统 CPU 使用率。
    • wt: 等待 IO CPU 时间。
    • vmstat –s 可以查看 page in/page out 的数量

    通常在性能测试工作中,主要使用vmstat 1 来查看当前系统是否有发生swap,主要关注si 和 so,如果说你当前系统swap中数据一直在发生变动,则说明你们操作系统当前存在一定的性能问题,需要进行排查和调优。

    网络监控- netstat

    Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

    下面我们来看看执行netstat后的输出结果,从整体上看,netstat 的输出结果可以分为两个部分:
    在这里插入图片描述
    1、一个是 Active Internet connections,称为有源 TCP 连接,其中"Recv-Q"和"Send-Q"指%0A的是接收队列和发送队列。这些数字一般都应该是 0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。

    2、另一个是 Active UNIX domain sockets,称为有源 Unix 域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。
    Proto 显示连接使用的协议,RefCnt 表示连接到本套接口上的进程号,Types 显示套接口的类型,State 显示套接口当前的状态,Path 表示连接到套接口的其它进程使用的路径名。

    常见参数:

    -a (all)显示所有选项,默认不显示 LISTEN 相关
    -t (tcp)仅显示 tcp 相关选项
    -u (udp)仅显示 udp 相关选项
    -n 拒绝显示别名,能显示数字的全部转化成数字。
    -l 仅列出有在 Listen (监听) 的服務状态
    -p 显示建立相关链接的程序名
    -r 显示路由信息,路由表
    -e 显示扩展信息,例如 uid 等 -s 按各个协议进行统计
    -c 每隔一个固定时间,执行该 netstat 命令。

    提示:LISTEN 和 LISTENING 的状态只有用-a 或者-l 才能看到

    实用命令实例

    列出所有端口 (包括监听和未监听的)
    在这里插入图片描述

    列出所有 tcp 端口 netstat -at

    netstat -at
    

    列出所有 udp 端口 netstat -au

    netstat -au
    

    超级监控工具 - dstat

    dstat是一个全能的性能监控工具,整合了CPU、内存、磁盘、网络等几乎所有的监控项,支持实时刷新。

    安装dstat

    yum install -y dstat
    

    在日常性能测试工作中,最常用的命令是

    dstat -tcmnd --disk-util
    

    在这里插入图片描述

    展开全文
  • 最近在学shell脚本开发,然后就想写一个简单的监控脚本,然后做成定时任务,期间碰到了定时任务不生效的问题。在这里统一记录下来 shell脚本如下: #!/bin/bash #获取ip地址 #ip=`ifconfig eth0 | grep "inet" | ...

    最近在学shell脚本开发,然后就想写一个简单的监控脚本,然后做成定时任务,期间碰到了定时任务不生效的问题。在这里统一记录下来
    shell脚本如下:

    #!/bin/bash
    #获取ip地址
    #ip=`ifconfig eth0 | grep "inet" | cut -f 2 -d ":"`
    #获取系统总核数
    #cpu_num=`grep -c 'model name' /proc/cpuinfo`
    #cpu_num=grep -c 'cpu cores' /proc/cpuinfo 
    #获取当前时间
    now=`date -u -d"+8 hour" +'%Y-%m-%d %H:%M:%S'`
    #cpt使用阈值
    cpu_warn='75'
    #mem空闲阈值
    mem_warn='100'
    #disk使用阈值
    disk_warn='90'
    #------cpu
    function item_cpu(){
    	cpu_idle=` top -b -n 1 | grep Cpu |awk {'print $8'}|cut -f 1 -d "."`
    	#cpu使用率
    	cpu_use=`expr 100 - $cpu_idle`
    	echo "$now 当前的cpu使用率为 $cpu_use" >> /linuxTest/cpu.log
    	if [[ $cpu_use -gt $cpu_warn ]]; then
    		echo "cpu报警" >> /linuxTest/cpu.log  #这里的文件类型要写成绝对路径,要不然定时任务会不生效
    	else
    		echo "cpu使用正常" >> /linuxTest/cpu.log
    	fi
    }
    
    #----mem内存
    function item_mem(){
    	mem_free=`free -m |grep "Mem"| awk {'print $4+$6'}`
    	echo "$now 当前内存剩余空间为 $mem_freeMB" >> /linuxTest/mem.log
    	if [[ $mem_free -lt $mem_warn  ]]; then
    		echo "mem报警" >> /linuxTest/mem.log
    	else
    		echo "mem使用正常" >> /linuxTest/mem.log
    	fi
    
    }
    
    
    #----disk磁盘
    function item_disk(){
    	disk_use=`df -P | grep /dev | grep -v -E '(tmp|boot)' | awk '{print $5}' | cut -f 1 -d "%"`
    	echo "$now 当前磁盘使用率为 $disk_use %" >> /linuxTest/disk.log
    	if [[ $disk_use -gt $disk_warn ]]; then
    		echo "disk报警" >> /linuxTest/disk.log
    	else
    		echo "disk使用正常" >> /linuxTest/disk.log
    	
    	fi
    
    }
    
    item_cpu
    item_disk
    item_mem
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56

    写完shell脚本之后就想这跑个定时任务

    命令是:crontab -e
    然后就会进入到定时任务的编写中(有关定时任务的参数可以自己百度)
    我写了一个每分钟都执行的测试案例
    命令是:* * * * * /linuxTest/cpuWatch.sh

    然后写完命令后重启crond的服务,发现这个定时任务一直都没有跑起来,去查了一下资料后,设置了几个参数
    1.首先 tail -100f /var/log/messages 查看系统运行的日志,发现了
    crond: sendmail: fatal: parameter inet_interfaces: no local interface found for ::1,解决完这个问题后,还是没有跑起来
    2.然后把日志的文件路径写成了绝对路径后,就可以跑起来了

    在这里插入图片描述

    嘿嘿,解决问题的感觉还是很爽的!虽然是个小问题,可是这种成就感还是很好的

    展开全文
  • CPU内存是系统层面影响应用性能的重要因素 一.CPU性能监控 查看系统的cpu使用率是否有异常的常用命令有top,vmstat,ps等。 1.top命令 通过命令 top 查看CPU使用情况,按P查看占用cpu最高的进程 top ##监控系统负载...

    前沿:

    CPU和内存是系统层面影响应用性能的重要因素

    一.CPU性能监控

    查看系统的cpu使用率是否有异常的常用命令有top,vmstat,ps等。

    1.top命令

    通过命令 top 查看CPU使用情况,按P查看占用cpu最高的进程

    top ##监控系统负载工具
    

    在这里插入图片描述
    %cpu

    • us 表示用户进程处理所占的百分比
    • sy 表示为内核线程处理所占的百分比
    • ni 表示被nice命令改变优先级的任务所占的百分比
    • id 表示cpu的空闲时间所占的百分比
    • wa 表示为在执行过程中等待io所占的百分比
    • hi 表示为硬件中断所占的百分比
    • si 表示为软件中断所占的百分比
    • st 表示虚拟cpu等待实际cpu的时间的百分比

    cpu性能监控主要通过us(用户进程所占用百分比)这个数据来看异常的进程信息。当us接近100%甚至更高时,可以确定是cpu繁忙造成的响应缓慢。一般说来,cpu繁忙的原因有以下几个:

    • 线程中有无限空循环、无阻塞、正则匹配或者单纯的计算
    • 频繁的gc
    • 多线程频繁的上下文切换

    top显示进程信息详解

    字段说明
    top系统当期时间
    up系统运行时长
    user登录当前系统的用户数量
    load average平均负载1 ,5,15 分钟的队列长度
    task任务
    Mem物理内存
    swap交换分区占用
    %cpucpu占用百分比

    top字段解释

    字段解释
    PID进程ID
    USER用户名称
    PR优先级
    NInice值。负值表示高优先级,正值表示低优先级
    VIRT进程使用的虚拟内存总量
    RES进程使用的、未被换出的物理内存大小
    SHR共享内存大小
    S进程状态 (D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程 )
    %CPU占用cpu百分比
    %MEM占用内存百分比
    TIME+进程使用的CPU时间总计
    COMMAND进程名称

    top内部参数

    参数说明
    Pcpu百分比排序
    M内存百分比
    T累计占用cpu时间
    l开启/关掉uptime信息
    t开启/关闭task&cpu信息
    s调整刷新频率
    k终止进程
    u查看指定用户进程

    2.ps命令

    ps ax -o %cpu,comm,pid --sort -%cpu | head -n 10  ##按照cpu负载进行排序
    

    在这里插入图片描述
    查使用CPU最多的K个进程

    ps -aux | sort -k4nr | head -K
    

    命令解释:

    • ps -aux (a指代all——所有的进程,u指代userid——执行该进程的用户id,x指代显示所有程序,不以终端机来区分)
    • sort -k4nr中(k代表从第几个位置开始,后面的数字4即是其开始位置,结束位置如果没有,则默认到最后;n指代numberic sort,根据其数值排序;r指代reverse,这里是指反向比较结果,输出时默认从小到大,反向后从大到小。)。本例中,可以看到%MEM在第4个位置,根据%MEM的数值进行由大到小的排序。
    • head -K(K指代行数,即输出前几位的结果)
    • |为管道符号,将查询出的结果导到下面的命令中进行下一步的操作

    3.vmstat

    在这里插入图片描述

    • in 每秒CPU的中断次数,包括时间中断
    • cs 每秒上下文切换次数
    • us 用户CPU时间。
    • sy 系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。
    • id 空闲 CPU时间,一般来说,id + us + sy = 100,一般我认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。
    • wt 等待IO CPU时间

    二.内存性能监控

    1.top命令

    通过命令 top 查看内存使用情况,按M查看占用内存最高的进程

    2.ps命令

    ps ax -o %mem,comm,pid --sort -%mem | less  ##按照内存负载进行排序
    

    在这里插入图片描述
    查看使用内存最多的进程

    ps -aux | sort -k3nr | head -K
    

    参考链接

    展开全文
  • linux 用python 的tkinter 界面 实现简单的cpu 内存 网速监测小窗口
  • linux系统java服务自启动shell脚本及服务cpu内存占用监控脚本
  • top(监控CPU/内存/进程/线程) # 直接使用 top # 查看进程里的线程信息 top -Hp 7275 # 查询PID为7275的线程数 ps hH p 7275 |wc -l # 关键字为java 的进程的线程数 pstree -p `ps -e | grep java | awk '...
  • 1、使用nmon工具监控内存cpu环境,每2个小时采集一次,并且将数据保存在一个文件中 2、使用iostat工具监控磁盘使用情况,每10分钟采集一次,将数据按天存放在文件中 iostat工具 1、现在linux环境安装iostat的依赖...
  • 监控cpu内存.txt

    2020-05-13 13:00:22
    监控linux服务器cpu内存脚本
  • linux监控cpu内存、磁盘数据等信息,用shell脚本是最合适不过的了。 以下脚本用来测试CPU压力,接收一个参数为:CPU数量。 例如: # ./killcpu.sh 2  产生两个进程号,记住这2个进程号,测试完后杀掉进程,...
  • 主要介绍了Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例,需要的朋友可以参考下
  • 性能测试的时候,经常需要监视压力机的资源消耗...1.CPU/内存监视工具 Htop,需要手动安装,安装方式为:yum install htop 运行时界面如下: 2.磁盘监视工具 iotop,需要手动安装,安装命令为:yum install...
  • linux内存cpu监控

    千次阅读 2018-10-31 11:46:16
    display Linux processes 动态监控进程 top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下表:  l - 关闭或开启第一部分第一行 top 信息的表示  t - 关闭或开启第一部分第二行 ...
  • linux监控cpu内存使用情况,发送邮件 2018年08月01日 16:06:45 阅读数:66更多 个人分类: Linux 目录 1.整体架构图 2.代码 3.邮件发送过慢的问题 这几天老大安排做linux服务器的工具,又接了几个巨坑,...
  • ############################################## #功能:系统内存和CPU使用率告警监控程序,根据传入参数阀值记录告警信息入库...6.监控CPU 7.监控硬盘 8.打印监测结果 9.按IP地址和脚本文件名创建带日期的日志文件
  • 1.面向window和linux和android三个平台。 2.线程可监控物理内存,虚拟内存CPU和GPU等占用情况。 3.输出结果保存为exls或者csv可进行图形化分析。
  • WGCLOUD是一个高性能的分布式监控系统,server基于springboot架构开发,agent采用go开发,核心模块包括:主机监控,ES集群监控CPU监控CPU温度监控,大屏看板,docker监控,网络流量监控内存监控,业务数据监控...
  • 自己写的监控linuxlinux流量,cpu利用率,磁盘利用率,内存利用率。并以每天,每周,每年4种图片报表呈现,记录了最大值和时间。具体步骤里面的文档有写
  • linux系统cpu内存、IO等监控脚本 可以用作定时任务执行监控
  • 本程序能够监控LINUX服务器的内存、磁盘、CPU使用情况 1、需要配置一台FTP服务器,可以LINUX服务器中搭建一个FTP服务即可。 2、监控的服务器需要与FTP服务器网络连通。 3、需要修改...
  • Linux top命令监控CPU内存详解

    千次阅读 2014-12-11 15:01:53
    top命令经常用来监控linux的系统状况,比如cpu内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。 本文通过一个运行中的WEB服务器的
  • prometheus使用node_exporter监控Linux主机 1.node_exporter简介 node_exporter常用于系统监控,使用go语言编写的指标收集器 node_exporter操作文档:https://prometheus.io/docs/guides/node-exporter/ prometheus...
  • echo "CPU使用率:${cpuUsage}% --> 磁盘使用率:${diskUsage}% --> 内存使用率:${mem_used_persent}%" >> $logFile send_mail fi } function main(){ check } main 4,运行脚本 [root@node-1 opt]# sh ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 94,589
精华内容 37,835
关键字:

linux监控cpu内存

linux 订阅