linux cpu使用率/proc/stat,内存使用率/proc/meminfo,磁盘使用率df,系统运行时间/proc/uptime

像大部分项目一样涉及到了linux 设备的资源监控问题,故而总结如下!
一般而言 root# top就显示了当前的所有设备资源信息,但是我们要想在程序中获取并处理还是不便的
在这里插入图片描述

一, linux cpu使用率计算

在这里插入图片描述
从前往后数字的意义分别是:

//CPU指标:user,nice, system, idle, iowait, irq, softirq
cpu  3510242 11471 238410 755073368 9581 133818 93993 0 0 0
 user: 用户态时间  
 nice: 用户态时间(低优先级,nice>0) 
 system: 内核态时间 
 idle: 空闲时间 
 iowait: I/O等待时间 
 irq: 硬中断 
 softirq: 软中断 

%us:表示用户空间程序的cpu使用率(没有通过nice调度)
%ni:表示用户空间且通过nice调度过的程序的cpu使用率。
%sy:表示系统空间的cpu使用率,主要是内核程序。
%id:空闲cpu
%wa:cpu运行时在等待io的时间
%hi:cpu处理硬中断的数量
%si:cpu处理软中断的数量
%st:被虚拟机偷走的cpu
注:99.0 id,表示空闲CPU,即CPU未使用率,100%-99.0%=1%,即系统的cpu使用率为1%。

每秒采集一次 也可以按需求采集
1、记录某个时刻cpu的使用情况
2、等上一个时间段
3、再记录此刻的cpu使用情况
4、计算总的时间片
把第一次的所有cpu使用情况求和,得到start.totalTime,把第二次的所有cpu使用情况求和,得到end.totalTime,end.totalTime - start.totalTimt() 得到这个时间段的所有时间片。
5、计算use时间
对应前三列的数据,用第二次的减去第一次的即可

root# cat /proc/stat
CPU 使用率计算:
(end.usedTime() - start.usedTime())/end.totalTime - start.totalTimt() 

二,Linux 内存使用率计算

在这里插入图片描述

root# cat  /proc/meminfo
 内存使用率计算:
(总内存-可用内存) / 总内存

三,Linux 磁盘使用率计算

在这里插入图片描述

root#  df -B 1
磁盘使用率的计算:
看到的就是了 37%

四,linux 系统运行时间计算

在这里插入图片描述

root# cat /proc/uptime

第一个就是linux自开机到目前为止的时间

获取监控数据命令

1.系统相关信息

OS内核版本

#uname -a

OS版本

#cat /etc/redhat-release

OS平台

#arch

采集OS类型

#uname -o

2. CPU相关信息

数量

#grep 'physical id' /proc/cpuinfo | sort -u |wc -l

线程

#grep 'processor' /proc/cpuinfo | sort -u | wc -l

核数

#grep 'core id' /proc/cpuinfo |wc -l

缓存

#cat /proc/cpuinfo  |grep -i "cache size"

主频

#cat  /proc/cpuinfo | grep MHz | uniq | head -n 1

型号

#cat /proc/cpuinfo  |grep -i "model name" 

3.硬盘相关信息

#yum install lshw

容量

#lshw -class disk |grep size: |awk '{print $3}'| awk -F"(" '{print $2}'|awk -F"TB" '{print $1}'

名字

#lshw -class disk |grep "logical name"

fw修订版本

#lshw -class disk |grep "version:"

厂商

#lshw -class disk |grep "product"

型号

#lshw -class disk |grep "product"
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值