9 proc.mem 监控项中memtype参数类型的注意事项
概述
Linux, AIX, FreeBSD 和 Solaris 都支持memtype参数。
‘memtype’ 参数的三个常用值 pmem, rss 和 vsize在所有系统中都适用。另外, 在一些系统中只支持该系统下的 ‘memtype’ 值。
AIX
请参见表中AIX上的“memtype”参数所支持的值.
| 支持的参数值 | 描述 | Source in procentry64 structure | Tries to be compatible with |
|---|---|---|---|
| vsize 1) | 虚拟内存大小 | pi_size | |
| pmem | 实际内存的百分比 | pi_prm | ps -o pmem |
| rss | 驻留集大小 | pi_trss + pi_drss | ps -o rssize |
| size | 进程大小(代码+数据) | pi_dvm | “ps gvw” SIZE column |
| dsize | 数据大小 | pi_dsize | |
| tsize | 文本(代码)的大小 | pi_tsize | “ps gvw” TSIZ column |
| sdsize | 来自共享库的数据大小 | pi_sdsize | |
| drss | 数据驻留集大小 | pi_drss | |
| trss | 文本驻留集大小 | pi_trss |
FreeBSD
请参见表中FreeBSD上的“memtype”参数支持的值。
| Supported value | Description | Source in kinfo_proc structure | Tries to be compatible with |
|---|---|---|---|
| vsize | 虚拟内存大小 | kp_eproc.e_vm.vm_map.size or ki_size | ps -o vsz |
| pmem | 实际内存的百分比 | calculated from rss | ps -o pmem |
| rss | 驻留集大小 | kp_eproc.e_vm.vm_rssize or ki_rssize | ps -o rss |
| size 2) | 进程(代码+数据+堆栈)大小 | tsize + dsize + ssize | |
| tsize | 文本(代码)的大小 | kp_eproc.e_vm.vm_tsize or ki_tsize | ps -o tsiz |
| dsize | 数据大小 | kp_eproc.e_vm.vm_dsize or ki_dsize | ps -o dsiz |
| ssize | 堆栈大小 | kp_eproc.e_vm.vm_ssize or ki_ssize | ps -o ssiz |
Linux
请参见表中Linux上的“memtype”参数支持的值。
| Supported value | Description | Source in /proc/<pid>/status file |
|---|---|---|
| vsize 3) | 虚拟内存大小 | VmSize |
| pmem | 实际内存的百分比 | (VmRSS/total_memory) * 100 |
| rss | 驻留集大小 | VmRSS |
| data | 数据段的大小 | VmData |
| exe | 代码段的大小 | VmExe |
| hwm | 驻留集峰值大小 | VmHWM |
| lck | 锁定内存大小 | VmLck |
| lib | 共享库的大小 | VmLib |
| peak | 虚拟内存峰值大小 | VmPeak |
| pin | 固定的页面大小 | VmPin |
| pte | 页表条目的大小 | VmPTE |
| size | 进程码+数据+栈段大小 | VmExe + VmData + VmStk |
| stk | 堆栈段大小 | VmStk |
| swap | 使用的交换空间大小 | VmSwap |
Linux上注意事项:
一些旧版本Linux 内核并不是支持所有’memtype’ 值的。例如, Linux 内核版本2.4就不支持
hwm,pin,peak,pte和swap等值。我们发现 Zabbix agent 主动检查进程参数
proc.mem[…,…,…,…,data]显示的值比agent 的 /proc/<pid>/status 文件中VmData行的值大大 4 kB。在agent自我监控管理时,agent的数据碎片增长率4 kB ,然后又返回到先前的值。
Solaris
请参见表中的Solaris上的“memtype”参数所支持的值。
| 支持的参数值 | 描述 | Source in psinfo structure | 兼容 |
|---|---|---|---|
| vsize 4) | Size of process image | pr_size | ps -o vsz |
| pmem | 实际内存的百分比 | pr_pctmem | ps -o pmem |
| rss | 驻留集大小 可能会被低估 - 参看 “man ps”中rss描述. | pr_rssize | ps -o rss |
- default value
