60 lines
2.5 KiB
PHP
60 lines
2.5 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Observium
|
|
*
|
|
* This file is part of Observium.
|
|
*
|
|
* @package observium
|
|
* @subpackage poller
|
|
* @copyright (C) Adam Armstrong
|
|
*
|
|
*/
|
|
|
|
if ($device['os'] == 'arista_eos') // FIXME mib based! => graphs dir?
|
|
{
|
|
echo('ARISTA-SW-IP-FORWARDING');
|
|
|
|
$data = snmpwalk_cache_oid($device, 'aristaSwFwdIpStatsTable', [], 'ARISTA-SW-IP-FORWARDING-MIB');
|
|
|
|
// Not doing "$data as $ipver => $data" to be sure we don't get unexpected AFs other than what we know
|
|
foreach (['ipv4', 'ipv6'] as $ipver) {
|
|
if (isset($data[$ipver])) {
|
|
rrdtool_update_ng($device, "arista-netstats-sw-$ipver", [
|
|
'InReceives' => $data[$ipver]['aristaSwFwdIpStatsHCInReceives'],
|
|
'InHdrErrors' => $data[$ipver]['aristaSwFwdIpStatsInHdrErrors'],
|
|
'InNoRoutes' => $data[$ipver]['aristaSwFwdIpStatsInNoRoutes'],
|
|
'InAddrErrors' => $data[$ipver]['aristaSwFwdIpStatsInAddrErrors'],
|
|
'InUnknownProtos' => $data[$ipver]['aristaSwFwdIpStatsInUnknownProtos'],
|
|
'InTruncatedPkts' => $data[$ipver]['aristaSwFwdIpStatsInTruncatedPkts'],
|
|
'InForwDatagrams' => $data[$ipver]['aristaSwFwdIpStatsHCInForwDatagrams'],
|
|
'ReasmReqds' => $data[$ipver]['aristaSwFwdIpStatsReasmReqds'],
|
|
'ReasmOKs' => $data[$ipver]['aristaSwFwdIpStatsReasmOKs'],
|
|
'ReasmFails' => $data[$ipver]['aristaSwFwdIpStatsReasmFails'],
|
|
'OutNoRoutes' => $data[$ipver]['aristaSwFwdIpStatsOutNoRoutes'],
|
|
'OutForwDatagrams' => $data[$ipver]['aristaSwFwdIpStatsHCOutForwDatagrams'],
|
|
'OutDiscards' => $data[$ipver]['aristaSwFwdIpStatsOutDiscards'],
|
|
'OutFragReqds' => $data[$ipver]['aristaSwFwdIpStatsOutFragReqds'],
|
|
'OutFragOKs' => $data[$ipver]['aristaSwFwdIpStatsOutFragOKs'],
|
|
'OutFragFails' => $data[$ipver]['aristaSwFwdIpStatsOutFragFails'],
|
|
'OutFragCreates' => $data[$ipver]['aristaSwFwdIpStatsOutFragCreates'],
|
|
'OutTransmits' => $data[$ipver]['aristaSwFwdIpStatsHCOutTransmits'],
|
|
]);
|
|
}
|
|
}
|
|
|
|
if (isset($data['ipv4'])) {
|
|
$graphs['netstat_arista_sw_ip'] = TRUE;
|
|
$graphs['netstat_arista_sw_ip_frag'] = TRUE;
|
|
}
|
|
|
|
if (isset($data['ipv6'])) {
|
|
$graphs['netstat_arista_sw_ip6'] = TRUE;
|
|
$graphs['netstat_arista_sw_ip6_frag'] = TRUE;
|
|
}
|
|
|
|
unset($data, $ipver);
|
|
}
|
|
|
|
// EOF
|