hrStorageType.4:-->.iso.org.dod.internet.mgmt.mib-2.host.hrStorage.hrStorageTypes.hrStorageRam
hrStorageType.3:-->.iso.org.dod.internet.mgmt.mib-2.host.hrStorage.hrStorageTypes.hrStorageVirtualMemory
hrStorageType.2:-->.iso.org.dod.internet.mgmt.mib-2.host.hrStorage.hrStorageTypes.hrStorageCompactDisc
hrStorageType.1:-->.iso.org.dod.internet.mgmt.mib-2.host.hrStorage.hrStorageTypes.hrStorageFixedDisk
其中,取到的实例 4 包含“hrStorageRam”作为值。
(2)hrStorageUsed OID (.1.3.6.1.2.1.25.2.3.1.6) & hrStorageAllocationUnits OID(.1.3.6.1.2.1.25.2.3.1.4) 取对应.4的值。
hrStorageUsed.4:-->96811
hrStorageUsed.3:-->106977
hrStorageUsed.2:-->2343303
hrStorageUsed.1:-->12479655
hrStorageAllocationUnits.4:-->65536
hrStorageAllocationUnits.3:-->65536
hrStorageAllocationUnits.2:-->2048
hrStorageAllocationUnits.1:-->4096
总内存使用 = 96811*65536/1048576 = 6050.688(MB)
(3)总内存大小
hrMemorySize.0:-->8289780
总内存大小 = 8289780/1024 = 8095.48828 (MB)
(4)内存利用率
内存利用率 = 6050.688/8095.48828*100% = 74.74%,产品中显示为 74%。
方式 2.如果 hrStorageType OID (.1.3.6.1.2.1.25.2.3.1.2)返回一个 不包含 hrStorageRam 的值:
通过 hrSWRunPerfMem OID (.1.3.6.1.2.1.25.5.1.1.2) 获取所有实例值总和,再除以 1024 得到总内存使用(MB)
hrSWRunPerfMem OID (.1.3.6.1.2.1.25.5.1.1.2)取的是所有进程占用的内存数值(单位 KB)
再除以总内存大小,得到内存利用率。
公式:
内存利用率 = [ hrSWRunPerfMem OID (.1.3.6.1.2.1.25.5.1.1.2) 的所有实例值的总和] / 1024] / 总内存大小 *100%
二.对于 Linux 服务器通过 CLI 取值命令:
/usr/bin/free -b | awk '/Mem:|cache:/ {print $2,$3}' | sed 'N;s/\n/ /' | awk '{if($4!=""){print ($4*100)/$1}else{print ($2*100)/$1}}'
自动返回一个百分比值。