diff --git a/includes/discovery/services.inc.php b/includes/discovery/services.inc.php index ebd4a66e88..713fbace6f 100644 --- a/includes/discovery/services.inc.php +++ b/includes/discovery/services.inc.php @@ -30,9 +30,9 @@ if (Config::get('discover_services')) { } } } - foreach (dbFetchRows('SELECT * FROM `device_groups` ORDER BY `name`') as $device_group) { - foreach (dbFetchRows('SELECT * FROM `services_template` WHERE `device_group_id` = ?', [$device_group['device_group_id']]) as $service_template) { - discover_service_template($device_group['device_group_id'], $service_template['service_template_id']); + foreach (dbFetchRows('SELECT `service_template_id` FROM `services_template`') as $service_template) { + foreach (dbFetchRows('SELECT `device_group_id` FROM `device_groups`') as $device_group) { + discover_service_template($device_group, $service_template); } } echo "\n"; diff --git a/includes/services.inc.php b/includes/services.inc.php index 90620bf50e..34d711f78a 100644 --- a/includes/services.inc.php +++ b/includes/services.inc.php @@ -196,7 +196,7 @@ function discover_service_template($device_group = null, $service_template = nul foreach ($device_ids as $device) { if (! dbFetchCell('SELECT COUNT(service_id) FROM `services` WHERE `service_template_id`= ? AND `device_id` = ?', [$service_template, $device])) { add_service($device, $services_template[0]['service_template_type'], $services_template[0]['service_template_desc'], $services_template[0]['service_template_ip'], $services_template[0]['service_template_param'], $services_template[0]['service_template_ignore'], $services_template[0]['service_template_disabled'], $services_template[0]['service_template_id'], $services_template[0]['service_template_name']); - log_event('Autodiscovered service: type ' . mres($service), $device, 'service', 2); + log_event('Autodiscovered service: type ' . mres($services_template), $device, 'service', 2); echo '+'; } }