2
2
/* This file is part of JFFNMS
3
3
* Copyright (C) <2002-2005> Javier Szyszlican <javier@szysz.com>
4
* Copyright (C) 2012 Craig Small <csmall@enc.com.au>
4
5
* This program is licensed under the GNU GPL, full terms in the LICENSE file
6
function poller_cisco_saagent_fwpacketloss($options) {
7
function poller_cisco_saagent_fwpacketloss($options)
9
if (empty($options['ro_community']) or !is_numeric($options['index']))
12
$sa_oid = '1.3.6.1.4.1.9.9.42.1.5.2.1';
13
$ip = $options['host_ip'];
14
$comm = $options['ro_community'];
15
$inst = $options['index'];
8
if (!is_array($GLOBALS["cisco_saagent_fwpacketloss"][$options["host_id"]]) && $options["ro_community"]) {
10
while ( !is_array($fwpacketloss) and $i++ <=2 ) {
11
$fwpacketloss_sd=snmp_walk($options["host_ip"],$options["ro_community"],".1.3.6.1.4.1.9.9.42.1.5.2.1.26",1);
12
$rtlnum=snmp_walk($options["host_ip"],$options["ro_community"],".1.3.6.1.4.1.9.9.42.1.5.2.1.1",1);
15
if ( is_array($fwpacketloss_sd) )
16
foreach ($fwpacketloss_sd as $key=>$entry) {
17
$key=explode(".",$key);
18
$key=$key[count($key)-1];
20
$fwpacketloss_sd[$key]=$entry;
23
if ( is_array($rtlnum) )
24
foreach ($rtlnum as $key=>$entry) {
25
$key=explode(".",$key);
26
$key=$key[count($key)-1];
31
if ( is_array($fwpacketloss_sd) )
32
foreach ( $fwpacketloss_sd as $key=>$entry ) {
33
$fwpacketloss[$key]=0;
36
$fwpacketloss[$key]=$fwpacketloss_sd[$key]/($fwpacketloss_sd[$key] + $rtlnum[$key])*100;
38
$GLOBALS["cisco_saagent_fwpacketloss"][$options["host_id"]][$key]=$fwpacketloss[$key];
43
if ( isset($GLOBALS["cisco_saagent_fwpacketloss"][$options["host_id"]][$options["index"]]) )
44
$value=$GLOBALS["cisco_saagent_fwpacketloss"][$options["host_id"]][$options["index"]];
17
if ( ($fwpacketloss = snmp_get($ip, $comm, "$sa_oid.26.$inst")) === FALSE)
19
if ( ($nr = snmp_get($ip, $comm, "$sa_oid.1.$inst")) === FALSE)
24
$pktloss = $fwpacketloss/($fwpacketloss+$nr)*100;