52 lines
1.2 KiB
PHP
52 lines
1.2 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Observium
|
|
*
|
|
* This file is part of Observium.
|
|
*
|
|
* @package observium
|
|
* @subpackage poller
|
|
* @copyright (C) Adam Armstrong
|
|
*
|
|
*/
|
|
|
|
// FIXME - INSTANCES
|
|
|
|
if (!empty($agent_data['app']['shoutcast'])) {
|
|
$app_id = discover_app($device, 'shoutcast');
|
|
|
|
// Polls shoutcast statistics from agent script
|
|
$servers = explode("\n", $agent_data['app']['shoutcast']);
|
|
$data = [];
|
|
|
|
foreach ($servers as $item => $server) {
|
|
$server = trim($server);
|
|
|
|
if (!empty($server)) {
|
|
$data = explode(";", $server);
|
|
[$host, $port] = explode(":", $data[0], 2);
|
|
|
|
$stats[$data[0]] = [
|
|
'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],
|
|
];
|
|
|
|
rrdtool_update_ng($device, 'shoutcast', $stats[$data[0]], "$app_id-" . $host . "_" . $port);
|
|
|
|
}
|
|
}
|
|
|
|
update_application($app_id, $stats);
|
|
|
|
unset($app_id, $host, $port, $data, $servers, $server, $item);
|
|
}
|
|
|
|
// EOF
|