librenms/includes/polling/applications/shoutcast.inc.php
Adam Amstrong b273e04241 /// -> //
git-svn-id: http://www.observium.org/svn/observer/trunk@3240 61d68cd4-352d-0410-923a-c4978735b2b8
2012-05-25 12:24:34 +00:00

50 lines
1.5 KiB
PHP

<?php
// Polls shoutcast statistics from script via SNMP
$options = "-O qv";
$oid = "nsExtendOutputFull.9.115.104.111.117.116.99.97.115.116";
$shoutcast = snmp_get($device, $oid, $options);
echo(" shoutcast");
$servers = explode("\n", $shoutcast);
foreach ($servers as $item=>$server)
{
$server = trim($server);
if (!empty($server))
{
$data = explode(";", $server);
list($host, $port) = split(":", $data['0'], 2);
$bitrate = $data['1'];
$traf_in = $data['2'];
$traf_out = $data['3'];
$current = $data['4'];
$status = $data['5'];
$peak = $data['6'];
$max = $data['7'];
$unique = $data['8'];
$rrdfile = $config['rrd_dir'] . "/" . $device['hostname'] . "/app-shoutcast-".$app['app_id']."-".$host."_".$port.".rrd";
if (!is_file($rrdfile))
{
rrdtool_create($rrdfile, "--step 300 \
DS:bitrate:GAUGE:600:0:125000000000 \
DS:traf_in:GAUGE:600:0:125000000000 \
DS:traf_out:GAUGE:600:0:125000000000 \
DS:current:GAUGE:600:0:125000000000 \
DS:status:GAUGE:600:0:125000000000 \
DS:peak:GAUGE:600:0:125000000000 \
DS:max:GAUGE:600:0:125000000000 \
DS:unique:GAUGE:600:0:125000000000 ".$config['rrd_rra']);
}
rrdtool_update($rrdfile, "N:$bitrate:$traf_in:$traf_out:$current:$status:$peak:$max:$unique");
}
}
?>