mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
git-svn-id: http://www.observium.org/svn/observer/trunk@1945 61d68cd4-352d-0410-923a-c4978735b2b8
43 lines
2.2 KiB
PHP
Executable File
43 lines
2.2 KiB
PHP
Executable File
<?php
|
|
|
|
$cpe_oids = array('cpeExtPsePortEnable', 'cpeExtPsePortDiscoverMode', 'cpeExtPsePortDeviceDetected', 'cpeExtPsePortIeeePd',
|
|
'cpeExtPsePortAdditionalStatus', 'cpeExtPsePortPwrMax', 'cpeExtPsePortPwrAllocated', 'cpeExtPsePortPwrAvailable', 'cpeExtPsePortPwrConsumption',
|
|
'cpeExtPsePortMaxPwrDrawn', 'cpeExtPsePortEntPhyIndex', 'cpeExtPsePortEntPhyIndex', 'cpeExtPsePortPolicingCapable', 'cpeExtPsePortPolicingEnable',
|
|
'cpeExtPsePortPolicingAction', 'cpeExtPsePortPwrManAlloc');
|
|
|
|
$peth_oids = array('pethPsePortAdminEnable', 'pethPsePortPowerPairsControlAbility', 'pethPsePortPowerPairs', 'pethPsePortDetectionStatus',
|
|
'pethPsePortPowerPriority', 'pethPsePortMPSAbsentCounter', 'pethPsePortType', 'pethPsePortPowerClassifications', 'pethPsePortInvalidSignatureCounter',
|
|
'pethPsePortPowerDeniedCounter', 'pethPsePortOverLoadCounter', 'pethPsePortShortCounter', 'pethMainPseConsumptionPower');
|
|
|
|
$port_stats = snmpwalk_cache_oid($device, "pethPsePortEntry", $port_stats, "POWER-ETHERNET-MIB");
|
|
$port_stats = snmpwalk_cache_oid($device, "cpeExtPsePortEntry", $port_stats, "CISCO-POWER-ETHERNET-EXT-MIB");
|
|
|
|
if ($port_stats[$port['ifIndex']] && $port['ifType'] == "ethernetCsmacd"
|
|
&& isset($port_stats[$port['ifIndex']]['dot3StatsIndex']))
|
|
{ // Check to make sure Port data is cached.
|
|
|
|
$this_port = &$port_stats[$port['ifIndex']];
|
|
|
|
$rrdfile = $config['rrd_dir'] . "/" . $device['hostname'] . "/" . safename("port-".$port['ifIndex']."-poe.rrd");
|
|
|
|
if (!file_exists($rrdfile))
|
|
{
|
|
$rrd_create .= "RRA:AVERAGE:0.5:1:600 RRA:AVERAGE:0.5:6:700 RRA:AVERAGE:0.5:24:775 RRA:AVERAGE:0.5:288:797 RRA:MAX:0.5:1:600 \
|
|
RRA:MAX:0.5:6:700 RRA:MAX:0.5:24:775 RRA:MAX:0.5:288:797";
|
|
|
|
# FIXME CISCOSPECIFIC
|
|
$rrd_create .= " DS:PortPwrAllocated:GAUGE:600:0:U";
|
|
$rrd_create .= " DS:PortPwrAvailable:GAUGE:600:0:U";
|
|
$rrd_create .= " DS:PortConsumption:DERIVE:600:0:U";
|
|
$rrd_create .= " DS:PortMaxPwrDrawn:GAUGE:600:0:U ";
|
|
|
|
rrdtool_create($rrdfile, $rrd_create);
|
|
}
|
|
|
|
$upd = "$polled:".$port['cpeExtPsePortPwrAllocated'].":".$port['cpeExtPsePortPwrAvailable'].":".$port['cpeExtPsePortPwrConsumption'].":".$port['cpeExtPsePortMaxPwrDrawn'];
|
|
$ret = rrdtool_update("$rrdfile", $upd);
|
|
|
|
echo("PoE ");
|
|
}
|
|
|
|
?>
|