使用 OID 检索值的简单算术
Simple arithmetic on values retreived using OIDs
我是 SNMP 和 Nagios 的新手,想对使用 OID 检索的值做一些基本的运算。
我需要监控大学网络服务器上的已用内存 (RAM)。他们似乎在使用 UCD-SNMP-MIB。到目前为止,我遇到了 memTotalReal.0
和 memAvailReal.0
,并且没有直接的方法来检索已使用的内存。这有什么具体原因吗?
基本减法的预期命令:
$USER1$/check_snmp -H $HOSTADDRESS$ -o memTotalReal.0-memAvailReal.0
检索已用内存的最简单方法是什么?我是否需要通过编写另一个脚本来求助于减法?
没有简单的方法可以做到。所以你需要这样计算:
(Used – buffers – cached) / Total * 100 = % memory used
Used = total - available
就 OID 而言,您需要使用以下内容:
- memTotalOID = '.1.3.6.1.4.1.2021.4.5.0'
- memRealAvailOID = '.1.3.6.1.4.1.2021.4.6.0'
- memRealBuffersOID = '.1.3.6.1.4.1.2021.4.14.0'
- memRealCachedOID = '.1.3.6.1.4.1.2021.4.15.0'
我是 SNMP 和 Nagios 的新手,想对使用 OID 检索的值做一些基本的运算。
我需要监控大学网络服务器上的已用内存 (RAM)。他们似乎在使用 UCD-SNMP-MIB。到目前为止,我遇到了 memTotalReal.0
和 memAvailReal.0
,并且没有直接的方法来检索已使用的内存。这有什么具体原因吗?
基本减法的预期命令:
$USER1$/check_snmp -H $HOSTADDRESS$ -o memTotalReal.0-memAvailReal.0
检索已用内存的最简单方法是什么?我是否需要通过编写另一个脚本来求助于减法?
没有简单的方法可以做到。所以你需要这样计算:
(Used – buffers – cached) / Total * 100 = % memory used
Used = total - available
就 OID 而言,您需要使用以下内容:
- memTotalOID = '.1.3.6.1.4.1.2021.4.5.0'
- memRealAvailOID = '.1.3.6.1.4.1.2021.4.6.0'
- memRealBuffersOID = '.1.3.6.1.4.1.2021.4.14.0'
- memRealCachedOID = '.1.3.6.1.4.1.2021.4.15.0'