Merge pull request #1724 from tuxis-ie/fix-agent-apps

Fix agent apps
This commit is contained in:
Daniel Preussker 2015-08-20 12:53:26 +00:00
commit 9844abb771

View File

@ -47,32 +47,17 @@ if ($device['os_group'] == 'unix') {
list($section, $data) = explode('>>>', $section);
list($sa, $sb) = explode('-', $section, 2);
if ($section == 'apache') {
$sa = 'app';
$sb = 'apache';
$agentapps = array(
"apache",
"mysql",
"nginx",
"bind",
"tinydns");
if (in_array($section, $agentapps)) {
$agent_data['app'][$section] = trim($data);
}
if ($section == 'mysql') {
$sa = 'app';
$sb = 'mysql';
}
if ($section == 'nginx') {
$sa = 'app';
$sb = 'nginx';
}
if ($section == 'bind') {
$sa = 'app';
$sb = 'bind';
}
if ($section == 'tinydns') {
$sa = 'app';
$sb = 'tinydns';
}
// if ($section == "drbd") { $sa = "app"; $sb = "drbd"; }
if (!empty($sa) && !empty($sb)) {
$agent_data[$sa][$sb] = trim($data);
}
@ -81,33 +66,19 @@ if ($device['os_group'] == 'unix') {
}
}//end foreach
if ($debug) {
print_r($agent_data);
}
d_echo($agent_data);
include 'unix-agent/packages.inc.php';
include 'unix-agent/munin-plugins.inc.php';
foreach (array_keys($agent_data) as $key) {
if (file_exists("includes/polling/unix-agent/$key.inc.php")) {
if ($debug) {
echo "Including: unix-agent/$key.inc.php";
}
d_echo("Including: unix-agent/$key.inc.php");
include "unix-agent/$key.inc.php";
}
}
foreach (array_keys($agent_data['app']) as $key) {
if (file_exists("includes/polling/applications/$key.inc.php")) {
if ($debug) {
echo "Including: applications/$key.inc.php";
}
include "applications/$key.inc.php";
}
}
// Processes
if (!empty($agent_data['ps'])) {
echo 'Processes: ';
@ -126,12 +97,16 @@ if ($device['os_group'] == 'unix') {
echo "\n";
}
// Apache
if (!empty($agent_data['app']['apache'])) {
$app_found['apache'] = true;
if (dbFetchCell('SELECT COUNT(*) FROM `applications` WHERE `device_id` = ? AND `app_type` = ?', array($device['device_id'], 'apache')) == '0') {
echo "Found new application 'Apache'\n";
dbInsert(array('device_id' => $device['device_id'], 'app_type' => 'apache'), 'applications');
foreach (array_keys($agent_data['app']) as $key) {
if (file_exists("includes/polling/applications/$key.inc.php")) {
d_echo("Enabling $key for ".$device['hostname']." if not yet enabled\n");
if (in_array($key, array('apache', 'mysql', 'nginx'))) {
if (dbFetchCell('SELECT COUNT(*) FROM `applications` WHERE `device_id` = ? AND `app_type` = ?', array($device['device_id'], $key)) == '0') {
echo "Found new application '$key'\n";
dbInsert(array('device_id' => $device['device_id'], 'app_type' => $key), 'applications');
}
}
}
}
@ -146,15 +121,6 @@ if ($device['os_group'] == 'unix') {
}
}
// MySQL
if (!empty($agent_data['app']['mysql'])) {
$app_found['mysql'] = true;
if (dbFetchCell('SELECT COUNT(*) FROM `applications` WHERE `device_id` = ? AND `app_type` = ?', array($device['device_id'], 'mysql')) == '0') {
echo "Found new application 'MySQL'\n";
dbInsert(array('device_id' => $device['device_id'], 'app_type' => 'mysql'), 'applications');
}
}
// DRBD
if (!empty($agent_data['drbd'])) {
$agent_data['app']['drbd'] = array();