Added custom fields to report templates
Former-commit-id: 525d21d17835a3bb08f47df273128e658a35bcd9
This commit is contained in:
parent
1fd40447e1
commit
49c913c6de
|
@ -15,4 +15,17 @@ ALTER TABLE `treport_content` ADD COLUMN `unknown_checks` TINYINT(1) DEFAULT '1'
|
|||
ALTER TABLE `treport_content` ADD COLUMN `agent_max_value` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content` ADD COLUMN `agent_min_value` TINYINT(1) DEFAULT '1';
|
||||
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `total_time` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_failed` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_in_ok_status` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_in_unknown_status` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_of_not_initialized_module` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_of_downtime` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `total_checks` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `checks_failed` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `checks_in_ok_status` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `unknown_checks` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `agent_max_value` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `agent_min_value` TINYINT(1) DEFAULT '1';
|
||||
|
||||
COMMIT;
|
|
@ -764,6 +764,18 @@ ALTER TABLE treport_content_template ADD COLUMN `lapse_calc` tinyint(1) default
|
|||
ALTER TABLE treport_content_template ADD COLUMN `lapse` int(11) default '300';
|
||||
ALTER TABLE treport_content_template ADD COLUMN `visual_format` tinyint(1) default '0';
|
||||
ALTER TABLE treport_content_template ADD COLUMN `hide_no_data` tinyint(1) default '0';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `total_time` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_failed` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_in_ok_status` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_in_unknown_status` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_of_not_initialized_module` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `time_of_downtime` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `total_checks` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `checks_failed` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `checks_in_ok_status` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `unknown_checks` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `agent_max_value` TINYINT(1) DEFAULT '1';
|
||||
ALTER TABLE `treport_content_template` ADD COLUMN `agent_min_value` TINYINT(1) DEFAULT '1';
|
||||
|
||||
-- -----------------------------------------------------
|
||||
-- Table `treport_content_sla_com_temp` (treport_content_sla_combined_template)
|
||||
|
|
|
@ -70,7 +70,7 @@ global $config;
|
|||
// IMPORTANT NOTE: All reporting pages are used also for metaconsole reporting functionality
|
||||
// So, it's very important to specify full url and paths to resources because metaconsole has a different
|
||||
// entry point: enterprise/meta/index.php than normal console !!!
|
||||
// Login check
|
||||
// Login check.
|
||||
check_login();
|
||||
|
||||
enterprise_hook('open_meta_frame');
|
||||
|
@ -89,7 +89,7 @@ if (!$report_r && !$report_w && !$report_m) {
|
|||
|
||||
require_once $config['homedir'].'/include/functions_reports.php';
|
||||
|
||||
// Load enterprise extensions
|
||||
// Load enterprise extensions.
|
||||
enterprise_include('operation/reporting/custom_reporting.php');
|
||||
enterprise_include_once('include/functions_metaconsole.php');
|
||||
|
||||
|
@ -98,7 +98,7 @@ if (enterprise_include_once('include/functions_reporting.php') !== ENTERPRISE_NO
|
|||
$enterpriseEnable = true;
|
||||
}
|
||||
|
||||
// Constant with fonts directory
|
||||
// Constant with fonts directory.
|
||||
define('_MPDF_TTFONTPATH', 'include/fonts/');
|
||||
|
||||
$activeTab = get_parameter('tab', 'main');
|
||||
|
@ -162,6 +162,10 @@ if ($idReport != 0) {
|
|||
$edit = true;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if (! $edit) {
|
||||
|
@ -227,6 +231,10 @@ switch ($action) {
|
|||
ORDER BY "order"'
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if ($items === false) {
|
||||
|
@ -234,7 +242,7 @@ switch ($action) {
|
|||
}
|
||||
|
||||
|
||||
// Clean the repeated order values
|
||||
// Clean the repeated order values.
|
||||
$order_temp = 1;
|
||||
foreach ($items as $item) {
|
||||
switch ($config['dbtype']) {
|
||||
|
@ -254,6 +262,10 @@ switch ($action) {
|
|||
['id_rc' => $item['id_rc']]
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$order_temp++;
|
||||
|
@ -281,6 +293,10 @@ switch ($action) {
|
|||
ORDER BY "order"'
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if ($items === false) {
|
||||
|
@ -344,6 +360,10 @@ switch ($action) {
|
|||
['id_rc' => $id]
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -415,6 +435,10 @@ switch ($action) {
|
|||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -444,9 +468,9 @@ switch ($action) {
|
|||
break;
|
||||
}
|
||||
|
||||
// Page header for metaconsole
|
||||
if ($enterpriseEnable and defined('METACONSOLE')) {
|
||||
// Bread crumbs
|
||||
// Page header for metaconsole.
|
||||
if ($enterpriseEnable && defined('METACONSOLE')) {
|
||||
// Bread crumbs.
|
||||
ui_meta_add_breadcrumb(
|
||||
[
|
||||
'link' => 'index.php?sec=reporting&sec2=godmode/reporting/reporting_builder&pure='.$pure,
|
||||
|
@ -456,10 +480,11 @@ switch ($action) {
|
|||
|
||||
ui_meta_print_page_header($nav_bar);
|
||||
|
||||
// Print header
|
||||
// Print header.
|
||||
ui_meta_print_header(__('Reporting'), '', $buttons);
|
||||
}
|
||||
// Page header for normal console
|
||||
|
||||
// Page header for normal console.
|
||||
else {
|
||||
ui_print_page_header(__('Custom reporting'), 'images/op_reporting.png', false, '', false, $buttons, false, '', 60);
|
||||
}
|
||||
|
@ -471,7 +496,7 @@ switch ($action) {
|
|||
case 'group_view':
|
||||
if ($config['id_user'] == $report['id_user'] || is_user_admin($config['id_user'])) {
|
||||
$delete = true;
|
||||
// owner can delete
|
||||
// Owner can delete.
|
||||
} else {
|
||||
$delete = check_acl(
|
||||
$config['id_user'],
|
||||
|
@ -484,7 +509,7 @@ switch ($action) {
|
|||
case 'group_edit':
|
||||
if ($config['id_user'] == $report['id_user'] || is_user_admin($config['id_user'])) {
|
||||
$delete = true;
|
||||
// owner can delete
|
||||
// Owner can delete.
|
||||
} else {
|
||||
$delete = check_acl(
|
||||
$config['id_user'],
|
||||
|
@ -501,6 +526,10 @@ switch ($action) {
|
|||
$delete = true;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if (! $delete) {
|
||||
|
@ -571,7 +600,7 @@ switch ($action) {
|
|||
ui_require_jquery_file('bgiframe');
|
||||
ui_require_jquery_file('autocomplete');
|
||||
|
||||
// Show only selected groups
|
||||
// Show only selected groups.
|
||||
if ($id_group > 0) {
|
||||
$group = ["$id_group" => $id_group];
|
||||
} else {
|
||||
|
@ -595,7 +624,7 @@ switch ($action) {
|
|||
}
|
||||
|
||||
// Fix : group filter was not working
|
||||
// Show only selected groups
|
||||
// Show only selected groups.
|
||||
if ($id_group > 0) {
|
||||
$group = ["$id_group" => $id_group];
|
||||
$filter['id_group'] = $id_group;
|
||||
|
@ -603,8 +632,8 @@ switch ($action) {
|
|||
$group = false;
|
||||
}
|
||||
|
||||
// Filter normal and metaconsole reports
|
||||
if ($config['metaconsole'] == 1 and defined('METACONSOLE')) {
|
||||
// Filter normal and metaconsole reports.
|
||||
if ($config['metaconsole'] == 1 && defined('METACONSOLE')) {
|
||||
$filter['metaconsole'] = 1;
|
||||
} else {
|
||||
$filter['metaconsole'] = 0;
|
||||
|
@ -670,12 +699,12 @@ switch ($action) {
|
|||
$table->size['csv'] = '5%';
|
||||
|
||||
$next = 4;
|
||||
// Calculate dinamically the number of the column
|
||||
// Calculate dinamically the number of the column.
|
||||
if (enterprise_hook('load_custom_reporting_1') !== ENTERPRISE_NOT_HOOK) {
|
||||
$next = 7;
|
||||
}
|
||||
|
||||
// Admin options only for RM flag
|
||||
// Admin options only for RM flag.
|
||||
if (check_acl($config['id_user'], 0, 'RM')) {
|
||||
$table->head[$next] = __('Private');
|
||||
$table->size[$next] = '2%';
|
||||
|
@ -743,7 +772,7 @@ switch ($action) {
|
|||
|
||||
$data[1] = ui_print_truncate_text($report['description'], 70);
|
||||
|
||||
// Remove html and xml button if items are larger than limit
|
||||
// Remove html and xml button if items are larger than limit.
|
||||
$item_count = db_get_num_rows('SELECT * FROM treport_content WHERE id_report='.$report['id_report']);
|
||||
$report['overload'] = $item_count >= $config['report_limit'];
|
||||
if ($report['overload']) {
|
||||
|
@ -752,7 +781,7 @@ switch ($action) {
|
|||
} else if (!$report['non_interactive']) {
|
||||
$data[2] = '<a href="'.$config['homeurl'].'index.php?sec=reporting&sec2=operation/reporting/reporting_viewer&id='.$report['id_report'].'&pure='.$pure.'">'.html_print_image('images/html.png', true, ['title' => __('HTML view')]).'</a>';
|
||||
$data[3] = '<a href="'.ui_get_full_url(false, false, false, false).'ajax.php?page='.$config['homedir'].'/operation/reporting/reporting_xml&id='.$report['id_report'].'">'.html_print_image('images/xml.png', true, ['title' => __('Export to XML')]).'</a>';
|
||||
// I chose ajax.php because it's supposed to give XML anyway
|
||||
// I chose ajax.php because it's supposed to give XML anyway.
|
||||
} else {
|
||||
$data[2] = html_print_image(
|
||||
'images/html_disabled.png',
|
||||
|
@ -765,14 +794,14 @@ switch ($action) {
|
|||
}
|
||||
|
||||
|
||||
// Calculate dinamically the number of the column
|
||||
// Calculate dinamically the number of the column.
|
||||
$next = 4;
|
||||
if (enterprise_hook('load_custom_reporting_2') !== ENTERPRISE_NOT_HOOK) {
|
||||
$next = 7;
|
||||
}
|
||||
|
||||
|
||||
// Admin options only for RM flag
|
||||
// Admin options only for RM flag.
|
||||
if (check_acl($config['id_user'], 0, 'RM')) {
|
||||
if ($report['private'] == 1) {
|
||||
$data[$next] = __('Yes');
|
||||
|
@ -820,6 +849,10 @@ switch ($action) {
|
|||
$delete = true;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if ($edit || $delete) {
|
||||
|
@ -915,7 +948,6 @@ switch ($action) {
|
|||
}
|
||||
|
||||
enterprise_hook('close_meta_frame');
|
||||
|
||||
return;
|
||||
|
||||
break;
|
||||
|
@ -943,6 +975,10 @@ switch ($action) {
|
|||
$idGroupReport = $report['id_group'];
|
||||
$description = $report['description'];
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -976,6 +1012,10 @@ switch ($action) {
|
|||
$id_group_edit = 0;
|
||||
$private = 1;
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if ($action == 'update') {
|
||||
|
@ -1026,10 +1066,10 @@ switch ($action) {
|
|||
$action = 'edit';
|
||||
} else if ($action == 'save') {
|
||||
if ($reportName != '' && $idGroupReport != '') {
|
||||
// This flag allow to differentiate between normal console and metaconsole reports
|
||||
// This flag allow to differentiate between normal console and metaconsole reports.
|
||||
$metaconsole_report = (int) is_metaconsole();
|
||||
|
||||
// Juanma (07/05/2014) New feature: Custom front page for reports
|
||||
// Juanma (07/05/2014) New feature: Custom front page for reports.
|
||||
if ($config['custom_report_front']) {
|
||||
$custom_font = $config['custom_report_front_font'];
|
||||
$logo = $config['custom_report_front_logo'];
|
||||
|
@ -1098,7 +1138,6 @@ switch ($action) {
|
|||
$good_format = false;
|
||||
switch ($action) {
|
||||
case 'update':
|
||||
|
||||
$values = [];
|
||||
$values['id_report'] = $idReport;
|
||||
// ---------------------------------------------------
|
||||
|
@ -1132,7 +1171,6 @@ switch ($action) {
|
|||
break;
|
||||
|
||||
case 'event_report_log':
|
||||
|
||||
$agents_to_report = get_parameter('id_agents3');
|
||||
$source = get_parameter('source', '');
|
||||
$search = get_parameter('search', '');
|
||||
|
@ -1154,7 +1192,7 @@ switch ($action) {
|
|||
$values['top_n_value'] = get_parameter('quantity');
|
||||
$interval_max = get_parameter('max_interval');
|
||||
$interval_min = get_parameter('min_interval');
|
||||
// Checks intervals fields
|
||||
// Checks intervals fields.
|
||||
if (preg_match('/^(\-)*[0-9]*\.?[0-9]+$/', $interval_max) and preg_match('/^(\-)*[0-9]*\.?[0-9]+$/', $interval_min)) {
|
||||
$good_format = true;
|
||||
}
|
||||
|
@ -1221,9 +1259,21 @@ switch ($action) {
|
|||
|
||||
case 'availability':
|
||||
// HACK it is saved in show_graph field.
|
||||
// Show interfaces instead the modules
|
||||
// Show interfaces instead the modules.
|
||||
$values['show_graph'] = get_parameter('checkbox_show_address_agent');
|
||||
$values['period'] = get_parameter('period');
|
||||
$values['total_time'] = get_parameter('total_time');
|
||||
$values['time_failed'] = get_parameter('time_failed');
|
||||
$values['time_in_ok_status'] = get_parameter('time_in_ok_status');
|
||||
$values['time_in_unknown_status'] = get_parameter('time_in_unknown_status');
|
||||
$values['time_of_not_initialized_module'] = get_parameter('time_of_not_initialized_module');
|
||||
$values['time_of_downtime'] = get_parameter('time_of_downtime');
|
||||
$values['total_checks'] = get_parameter('total_checks');
|
||||
$values['checks_failed'] = get_parameter('checks_failed');
|
||||
$values['checks_in_ok_status'] = get_parameter('checks_in_ok_status');
|
||||
$values['unknown_checks'] = get_parameter('unknown_checks');
|
||||
$values['agent_max_value'] = get_parameter('agent_max_value');
|
||||
$values['agent_min_value'] = get_parameter('agent_min_value');
|
||||
$good_format = true;
|
||||
break;
|
||||
|
||||
|
@ -1258,6 +1308,7 @@ switch ($action) {
|
|||
$values['text'] = get_parameter('text');
|
||||
$values['show_graph'] = get_parameter('combo_graph_options');
|
||||
$good_format = true;
|
||||
break;
|
||||
}
|
||||
|
||||
$values['id_agent'] = get_parameter('id_agent');
|
||||
|
@ -1306,6 +1357,10 @@ switch ($action) {
|
|||
$values['time_from'] = '#to_date(\''.get_parameter('time_from').'\',\'hh24:mi:ss\')';
|
||||
$values['time_to'] = '#to_date(\''.get_parameter('time_to').'\', \'hh24:mi:ss\')';
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$values['group_by_agent'] = get_parameter('checkbox_row_group_by_agent');
|
||||
|
@ -1326,7 +1381,7 @@ switch ($action) {
|
|||
$values['server_name'] = get_parameter('combo_server');
|
||||
}
|
||||
|
||||
if ((($values['type'] == 'custom_graph') or ($values['type'] == 'automatic_custom_graph')) && ($values['id_gs'] == 0 || $values['id_gs'] == '')) {
|
||||
if ((($values['type'] == 'custom_graph') || ($values['type'] == 'automatic_custom_graph')) && ($values['id_gs'] == 0 || $values['id_gs'] == '')) {
|
||||
$resultOperationDB = false;
|
||||
break;
|
||||
}
|
||||
|
@ -1343,7 +1398,7 @@ switch ($action) {
|
|||
|
||||
$event_filter_search = get_parameter('filter_search', '');
|
||||
|
||||
// If metaconsole is activated
|
||||
// If metaconsole is activated.
|
||||
if ($config['metaconsole'] == 1 && defined('METACONSOLE')) {
|
||||
if (($values['type'] == 'custom_graph') or ($values['type'] == 'automatic_custom_graph')) {
|
||||
$id_gs = substr($values['id_gs'], 0, strpos($values['id_gs'], '|'));
|
||||
|
@ -1354,7 +1409,7 @@ switch ($action) {
|
|||
}
|
||||
}
|
||||
|
||||
// Get agent and server name
|
||||
// Get agent and server name.
|
||||
$agent_name_server = io_safe_output(get_parameter('agent'));
|
||||
|
||||
if (isset($agent_name_server)) {
|
||||
|
@ -1364,7 +1419,7 @@ switch ($action) {
|
|||
$server_name = substr($agent_name_server, $separator_pos);
|
||||
$server_name = str_replace('(', '', $server_name);
|
||||
$server_name = str_replace(')', '', $server_name);
|
||||
// Will update server_name variable
|
||||
// Will update server_name variable.
|
||||
$values['server_name'] = trim($server_name);
|
||||
$agent_name = substr($agent_name_server, 0, $separator_pos);
|
||||
}
|
||||
|
@ -1460,6 +1515,10 @@ switch ($action) {
|
|||
$style['label'] = '';
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$values['style'] = io_safe_input(json_encode($style));
|
||||
|
@ -1474,6 +1533,10 @@ switch ($action) {
|
|||
unset($values['type']);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$resultOperationDB = db_process_sql_update(
|
||||
|
@ -1495,7 +1558,7 @@ switch ($action) {
|
|||
$values['description'] = get_parameter('description');
|
||||
$label = get_parameter('label', '');
|
||||
|
||||
// Add macros name
|
||||
// Add macros name.
|
||||
$items_label = [];
|
||||
$items_label['type'] = get_parameter('type');
|
||||
$items_label['id_agent'] = get_parameter('id_agent');
|
||||
|
@ -1505,7 +1568,7 @@ switch ($action) {
|
|||
$values['name'] = reporting_label_macro($items_label, $name_it);
|
||||
|
||||
// Support for projection graph, prediction date and SLA reports
|
||||
// 'top_n_value', 'top_n' and 'text' fields will be reused for these types of report
|
||||
// 'top_n_value', 'top_n' and 'text' fields will be reused for these types of report.
|
||||
switch ($values['type']) {
|
||||
case 'projection_graph':
|
||||
$values['period'] = get_parameter('period1');
|
||||
|
@ -1607,7 +1670,7 @@ switch ($action) {
|
|||
case 'availability':
|
||||
$values['period'] = get_parameter('period');
|
||||
// HACK it is saved in show_graph field.
|
||||
// Show interfaces instead the modules
|
||||
// Show interfaces instead the modules.
|
||||
$values['show_graph'] = get_parameter('checkbox_show_address_agent');
|
||||
$good_format = true;
|
||||
break;
|
||||
|
@ -1682,6 +1745,10 @@ switch ($action) {
|
|||
$values['only_display_wrong'] = $only_display_wrong_tmp;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$values['monday'] = get_parameter('monday', 0);
|
||||
|
@ -1691,6 +1758,18 @@ switch ($action) {
|
|||
$values['friday'] = get_parameter('friday', 0);
|
||||
$values['saturday'] = get_parameter('saturday', 0);
|
||||
$values['sunday'] = get_parameter('sunday', 0);
|
||||
$values['total_time'] = get_parameter('total_time', 0);
|
||||
$values['time_failed'] = get_parameter('time_failed', 0);
|
||||
$values['time_in_ok_status'] = get_parameter('time_in_ok_status', 0);
|
||||
$values['time_in_unknown_status'] = get_parameter('time_in_unknown_status', 0);
|
||||
$values['time_of_not_initialized_module'] = get_parameter('time_of_not_initialized_module', 0);
|
||||
$values['time_of_downtime'] = get_parameter('time_of_downtime', 0);
|
||||
$values['total_checks'] = get_parameter('total_checks', 0);
|
||||
$values['checks_failed'] = get_parameter('checks_failed', 0);
|
||||
$values['checks_in_ok_status'] = get_parameter('checks_in_ok_status', 0);
|
||||
$values['unknown_checks'] = get_parameter('unknown_checks', 0);
|
||||
$values['agent_max_value'] = get_parameter('agent_max_value', 0);
|
||||
$values['agent_min_value'] = get_parameter('agent_min_value', 0);
|
||||
switch ($config['dbtype']) {
|
||||
case 'mysql':
|
||||
case 'postgresql':
|
||||
|
@ -1702,6 +1781,10 @@ switch ($action) {
|
|||
$values['time_from'] = '#to_date(\''.get_parameter('time_from').'\',\'hh24:mi:ss\')';
|
||||
$values['time_to'] = '#to_date(\''.get_parameter('time_to').'\', \'hh24:mi:ss\')';
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$values['group_by_agent'] = get_parameter('checkbox_row_group_by_agent', 0);
|
||||
|
@ -1729,8 +1812,8 @@ switch ($action) {
|
|||
}
|
||||
}
|
||||
|
||||
if (($values['type'] == 'sql') or ($values['type'] == 'sql_graph_hbar')
|
||||
or ($values['type'] == 'sql_graph_vbar') or ($values['type'] == 'sql_graph_pie')
|
||||
if (($values['type'] == 'sql') || ($values['type'] == 'sql_graph_hbar')
|
||||
|| ($values['type'] == 'sql_graph_vbar') || ($values['type'] == 'sql_graph_pie')
|
||||
) {
|
||||
$values['treport_custom_sql_id'] = get_parameter('id_custom');
|
||||
if ($values['treport_custom_sql_id'] == 0) {
|
||||
|
@ -1772,7 +1855,7 @@ switch ($action) {
|
|||
|
||||
$event_filter_search = get_parameter('filter_search', '');
|
||||
|
||||
// Added for events items
|
||||
// Added for events items.
|
||||
$style['show_summary_group'] = $show_summary_group;
|
||||
$style['filter_event_severity'] = json_encode($filter_event_severity);
|
||||
$style['filter_event_type'] = json_encode($filter_event_type);
|
||||
|
@ -1794,6 +1877,10 @@ switch ($action) {
|
|||
$style['label'] = '';
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -1838,6 +1925,10 @@ switch ($action) {
|
|||
$style['label'] = '';
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$values['style'] = io_safe_input(json_encode($style));
|
||||
|
@ -1852,6 +1943,10 @@ switch ($action) {
|
|||
unset($values['type']);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$result = db_process_sql_insert(
|
||||
|
@ -1881,6 +1976,10 @@ switch ($action) {
|
|||
WHERE id_report = '.$idReport
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if ($max === false) {
|
||||
|
@ -1906,6 +2005,10 @@ switch ($action) {
|
|||
['id_rc' => $idItem]
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$resultOperationDB = true;
|
||||
|
@ -1913,7 +2016,8 @@ switch ($action) {
|
|||
|
||||
break;
|
||||
}
|
||||
// If fields dont have good format
|
||||
|
||||
// If fields dont have good format.
|
||||
else {
|
||||
$resultOperationDB = false;
|
||||
}
|
||||
|
@ -1921,7 +2025,7 @@ switch ($action) {
|
|||
break;
|
||||
|
||||
default:
|
||||
if ($enterpriseEnable and $activeTab != 'advanced') {
|
||||
if ($enterpriseEnable && $activeTab != 'advanced') {
|
||||
$resultOperationDB = reporting_enterprise_update_action();
|
||||
}
|
||||
break;
|
||||
|
@ -1979,7 +2083,7 @@ switch ($action) {
|
|||
case 'agent':
|
||||
case 'type':
|
||||
|
||||
// Sort functionality for normal console
|
||||
// Sort functionality for normal console.
|
||||
if (!defined('METACONSOLE')) {
|
||||
switch ($field) {
|
||||
case 'module':
|
||||
|
@ -2013,6 +2117,10 @@ switch ($action) {
|
|||
case 'type':
|
||||
$sql = 'SELECT id_rc FROM treport_content WHERE %s ORDER BY type %s';
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$sql = sprintf($sql, 'id_report = '.$idReport, '%s');
|
||||
|
@ -2024,11 +2132,15 @@ switch ($action) {
|
|||
case 'down':
|
||||
$sql = sprintf($sql, 'DESC');
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$ids = db_get_all_rows_sql($sql);
|
||||
}
|
||||
// Sort functionality for metaconsole
|
||||
// Sort functionality for metaconsole.
|
||||
else if ($config['metaconsole'] == 1) {
|
||||
switch ($field) {
|
||||
case 'agent':
|
||||
|
@ -2046,14 +2158,14 @@ switch ($action) {
|
|||
foreach ($report_items as $report_item) {
|
||||
$connection = metaconsole_get_connection($report_item['server_name']);
|
||||
if (metaconsole_load_external_db($connection) != NOERR) {
|
||||
// ui_print_error_message ("Error connecting to ".$server_name);
|
||||
// ui_print_error_message ("Error connecting to ".$server_name);.
|
||||
}
|
||||
|
||||
switch ($field) {
|
||||
case 'agent':
|
||||
$agents_name = agents_get_agents(['id_agente' => $report_item['id_agent']], 'nombre');
|
||||
|
||||
// Item without agent
|
||||
// Item without agent.
|
||||
if (!$agents_name) {
|
||||
$element_name = '';
|
||||
} else {
|
||||
|
@ -2065,13 +2177,17 @@ switch ($action) {
|
|||
case 'module':
|
||||
$module_name = modules_get_agentmodule_name($report_item['id_agent_module']);
|
||||
|
||||
// Item without module
|
||||
// Item without module.
|
||||
if (!$module_name) {
|
||||
$element_name = '';
|
||||
} else {
|
||||
$element_name = $module_name;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
metaconsole_restore_db();
|
||||
|
@ -2079,7 +2195,7 @@ switch ($action) {
|
|||
$temp_sort[$report_item['id_rc']] = $element_name;
|
||||
}
|
||||
|
||||
// Performes sorting
|
||||
// Performes sorting.
|
||||
switch ($dir) {
|
||||
case 'up':
|
||||
asort($temp_sort);
|
||||
|
@ -2088,6 +2204,10 @@ switch ($action) {
|
|||
case 'down':
|
||||
arsort($temp_sort);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
foreach ($temp_sort as $temp_element_key => $temp_element_val) {
|
||||
|
@ -2096,13 +2216,13 @@ switch ($action) {
|
|||
$i++;
|
||||
}
|
||||
|
||||
// Free resources
|
||||
// Free resources.
|
||||
unset($temp_sort);
|
||||
unset($report_items);
|
||||
}
|
||||
break;
|
||||
|
||||
// Type case only depends of local database
|
||||
// Type case only depends of local database.
|
||||
case 'type':
|
||||
$sql = 'SELECT id_rc
|
||||
FROM treport_content
|
||||
|
@ -2121,10 +2241,13 @@ switch ($action) {
|
|||
case 'down':
|
||||
$sql = sprintf($sql, 'DESC');
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$ids = db_get_all_rows_sql($sql);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -2163,6 +2286,10 @@ switch ($action) {
|
|||
WHERE id_rc = '.$idItem
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
// db_get_value_filter('order', 'treport_content', array('id_rc' => $idItem));
|
||||
|
@ -2174,6 +2301,10 @@ switch ($action) {
|
|||
case 'down':
|
||||
$newOrder = ($oldOrder + 1);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
switch ($config['dbtype']) {
|
||||
|
@ -2211,6 +2342,10 @@ switch ($action) {
|
|||
false
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
if ($resultOperationDB !== false) {
|
||||
|
@ -2240,13 +2375,17 @@ switch ($action) {
|
|||
false
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
// Added for report templates
|
||||
// Added for report templates.
|
||||
default:
|
||||
if ($enterpriseEnable) {
|
||||
$buttons = [
|
||||
|
@ -2270,7 +2409,7 @@ switch ($action) {
|
|||
break;
|
||||
}
|
||||
|
||||
// Page header for metaconsole
|
||||
// Page header for metaconsole.
|
||||
if ($enterpriseEnable and defined('METACONSOLE')) {
|
||||
// Bread crumbs
|
||||
ui_meta_add_breadcrumb(
|
||||
|
@ -2282,10 +2421,10 @@ switch ($action) {
|
|||
|
||||
ui_meta_print_page_header($nav_bar);
|
||||
|
||||
// Print header
|
||||
// Print header.
|
||||
ui_meta_print_header(__('Reporting'), '', $buttons);
|
||||
}
|
||||
// Page header for normal console
|
||||
// Page header for normal console.
|
||||
else {
|
||||
ui_print_page_header($subsection, 'images/op_reporting.png', false, '', false, $buttons, false, '', 60);
|
||||
}
|
||||
|
@ -2348,9 +2487,9 @@ if ($idReport != 0) {
|
|||
$textReportName = __('Create Custom Report');
|
||||
}
|
||||
|
||||
// Page header for metaconsole
|
||||
// Page header for metaconsole.
|
||||
if ($enterpriseEnable and defined('METACONSOLE')) {
|
||||
// Bread crumbs
|
||||
// Bread crumbs.
|
||||
ui_meta_add_breadcrumb(
|
||||
[
|
||||
'link' => 'index.php?sec=reporting&sec2=godmode/reporting/reporting_builder&pure='.$pure,
|
||||
|
@ -2360,7 +2499,7 @@ if ($enterpriseEnable and defined('METACONSOLE')) {
|
|||
|
||||
ui_meta_print_page_header($nav_bar);
|
||||
|
||||
// Print header
|
||||
// Print header.
|
||||
ui_meta_print_header(__('Reporting').$textReportName, '', $buttons);
|
||||
} else {
|
||||
ui_print_page_header(
|
||||
|
|
|
@ -41,11 +41,11 @@ require_once $config['homedir'].'/include/functions_network.php';
|
|||
//
|
||||
// CONSTANTS DEFINITIONS //
|
||||
//
|
||||
// Priority modes
|
||||
// Priority modes.
|
||||
define('REPORT_PRIORITY_MODE_OK', 1);
|
||||
define('REPORT_PRIORITY_MODE_UNKNOWN', 2);
|
||||
|
||||
// Status
|
||||
// Status.
|
||||
define('REPORT_STATUS_ERR', 0);
|
||||
define('REPORT_STATUS_OK', 1);
|
||||
define('REPORT_STATUS_UNKNOWN', 2);
|
||||
|
@ -62,7 +62,7 @@ function reporting_user_can_see_report($id_report, $id_user=null)
|
|||
$id_user = $config['id_user'];
|
||||
}
|
||||
|
||||
// Get Report record (to get id_group)
|
||||
// Get Report record (to get id_group).
|
||||
$report = db_get_row('treport', 'id_report', $id_report);
|
||||
|
||||
// Check ACL on the report to see if user has access to the report.
|
||||
|
@ -108,6 +108,10 @@ function reporting_get_type($content)
|
|||
case REPORT_OLD_TYPE_SUMATORY:
|
||||
$content['type'] = 'sumatory';
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
return $content['type'];
|
||||
|
@ -205,7 +209,7 @@ function reporting_make_reporting_data(
|
|||
$server_name = $content['server_name'];
|
||||
|
||||
// General reports with 0 period means last value
|
||||
// Avoid to overwrite it by template value
|
||||
// Avoid to overwrite it by template value.
|
||||
if (!empty($period) && ($content['type'] !== 'general' && $content['period'] != 0)) {
|
||||
$content['period'] = $period;
|
||||
}
|
||||
|
@ -229,7 +233,7 @@ function reporting_make_reporting_data(
|
|||
|
||||
if (in_array('label', $content['style'])) {
|
||||
if ($content['id_agent'] == 0) {
|
||||
// Metaconsole connection
|
||||
// Metaconsole connection.
|
||||
if ($metaconsole_on && $server_name != '') {
|
||||
$connection = metaconsole_get_connection($server_name);
|
||||
if (!metaconsole_load_external_db($connection)) {
|
||||
|
@ -240,7 +244,7 @@ function reporting_make_reporting_data(
|
|||
|
||||
array_push($agents_to_macro, modules_get_agentmodule_agent($graph_item['id_agent_module']));
|
||||
if ($metaconsole_on) {
|
||||
// Restore db connection
|
||||
// Restore db connection.
|
||||
metaconsole_restore_db();
|
||||
}
|
||||
}
|
||||
|
@ -291,7 +295,7 @@ function reporting_make_reporting_data(
|
|||
$content['name'] = reporting_label_macro($items_label, $content['style']['name_label']);
|
||||
|
||||
if ($metaconsole_on) {
|
||||
// Restore db connection
|
||||
// Restore db connection.
|
||||
metaconsole_restore_db();
|
||||
}
|
||||
}
|
||||
|
@ -781,6 +785,10 @@ function reporting_make_reporting_data(
|
|||
$pdf
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$index_content++;
|
||||
|
@ -847,7 +855,7 @@ function reporting_SLA(
|
|||
include_once $config['homedir'].'/include/functions_planned_downtimes.php';
|
||||
$metaconsole_on = is_metaconsole();
|
||||
|
||||
// checking if needed to show graph or table
|
||||
// checking if needed to show graph or table.
|
||||
if ($content['show_graph'] == 0 || $content['show_graph'] == 1) {
|
||||
$show_table = 1;
|
||||
} else {
|
||||
|
@ -1241,7 +1249,6 @@ function reporting_SLA(
|
|||
}
|
||||
|
||||
$return['charts'] = $temp;
|
||||
|
||||
break;
|
||||
|
||||
case 2:
|
||||
|
@ -1278,7 +1285,10 @@ function reporting_SLA(
|
|||
}
|
||||
|
||||
$return['charts'] = $temp;
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1317,7 +1327,7 @@ function reporting_event_top_n(
|
|||
|
||||
case REPORT_TOP_N_AVG:
|
||||
default:
|
||||
// If nothing is selected then it will be shown the average data
|
||||
// If nothing is selected then it will be shown the average data.
|
||||
$type_top_n = __('Avg');
|
||||
break;
|
||||
}
|
||||
|
@ -1334,7 +1344,7 @@ function reporting_event_top_n(
|
|||
$return['top_n'] = $content['top_n_value'];
|
||||
|
||||
if (empty($content['subitems'])) {
|
||||
// Get all the related data
|
||||
// Get all the related data.
|
||||
$sql = sprintf(
|
||||
'SELECT id_agent_module, server_name
|
||||
FROM treport_content_item
|
||||
|
@ -1347,7 +1357,7 @@ function reporting_event_top_n(
|
|||
$tops = $content['subitems'];
|
||||
}
|
||||
|
||||
// Get chart
|
||||
// Get chart.
|
||||
reporting_set_conf_charts(
|
||||
$width,
|
||||
$height,
|
||||
|
@ -1371,7 +1381,7 @@ function reporting_event_top_n(
|
|||
$data_top = [];
|
||||
|
||||
foreach ($tops as $key => $row) {
|
||||
// Metaconsole connection
|
||||
// Metaconsole connection.
|
||||
$server_name = $row['server_name'];
|
||||
if (($config['metaconsole'] == 1) && $server_name != '' && defined('METACONSOLE')) {
|
||||
$connection = metaconsole_get_connection($server_name);
|
||||
|
@ -1401,7 +1411,7 @@ function reporting_event_top_n(
|
|||
|
||||
case REPORT_TOP_N_AVG:
|
||||
default:
|
||||
// If nothing is selected then it will be shown the average data
|
||||
// If nothing is selected then it will be shown the average data.
|
||||
$value = reporting_get_agentmodule_data_average($row['id_agent_module'], $content['period']);
|
||||
break;
|
||||
}
|
||||
|
@ -1415,7 +1425,7 @@ function reporting_event_top_n(
|
|||
$units[$key] = $unit;
|
||||
}
|
||||
|
||||
// Restore dbconnection
|
||||
// Restore dbconnection.
|
||||
if (($config['metaconsole'] == 1) && $server_name != '' && defined('METACONSOLE')) {
|
||||
metaconsole_restore_db();
|
||||
}
|
||||
|
@ -1428,21 +1438,25 @@ function reporting_event_top_n(
|
|||
|
||||
// Order to show.
|
||||
switch ($order_uptodown) {
|
||||
// Descending
|
||||
// Descending.
|
||||
case 1:
|
||||
array_multisort($data_top, SORT_DESC, $agent_name, SORT_ASC, $module_name, SORT_ASC, $id_agent_module, SORT_ASC, $units, SORT_ASC);
|
||||
break;
|
||||
|
||||
// Ascending
|
||||
// Ascending.
|
||||
case 2:
|
||||
array_multisort($data_top, SORT_ASC, $agent_name, SORT_ASC, $module_name, SORT_ASC, $id_agent_module, SORT_ASC, $units, SORT_ASC);
|
||||
break;
|
||||
|
||||
// By agent name or without selection
|
||||
// By agent name or without selection.
|
||||
case 0:
|
||||
case 3:
|
||||
array_multisort($agent_name, SORT_ASC, $data_top, SORT_ASC, $module_name, SORT_ASC, $id_agent_module, SORT_ASC, $units, SORT_ASC);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
array_splice($data_top, $top_n_value);
|
||||
|
@ -1458,7 +1472,7 @@ function reporting_event_top_n(
|
|||
$data_top_values['id_agent_module'] = $id_agent_module;
|
||||
$data_top_values['units'] = $units;
|
||||
|
||||
// Define truncate size depends the graph width
|
||||
// Define truncate size depends the graph width.
|
||||
$truncate_size = ($width / (4 * ($config['font_size'])) - 1);
|
||||
|
||||
if ($order_uptodown == 1 || $order_uptodown == 2) {
|
||||
|
@ -1584,7 +1598,7 @@ function reporting_event_top_n(
|
|||
$ttl
|
||||
);
|
||||
|
||||
// Display bars graph
|
||||
// Display bars graph.
|
||||
$return['charts']['bars'] = hbar_graph(
|
||||
$data_hbar,
|
||||
$width,
|
||||
|
@ -1609,7 +1623,7 @@ function reporting_event_top_n(
|
|||
$return['resume'] = null;
|
||||
|
||||
if ($content['show_resume'] && count($data_top_values) > 0) {
|
||||
// Get the very first not null value
|
||||
// Get the very first not null value.
|
||||
$i = 0;
|
||||
do {
|
||||
$min = $data_top_values['data_top'][$i];
|
||||
|
@ -1689,14 +1703,14 @@ function reporting_event_report_group(
|
|||
|
||||
$event_filter = $content['style'];
|
||||
$return['show_summary_group'] = $event_filter['show_summary_group'];
|
||||
// filter
|
||||
// Filter.
|
||||
$show_summary_group = $event_filter['show_summary_group'];
|
||||
$filter_event_severity = json_decode($event_filter['filter_event_severity'], true);
|
||||
$filter_event_type = json_decode($event_filter['filter_event_type'], true);
|
||||
$filter_event_status = json_decode($event_filter['filter_event_status'], true);
|
||||
$filter_event_filter_search = $event_filter['event_filter_search'];
|
||||
|
||||
// graphs
|
||||
// Graphs.
|
||||
$event_graph_by_agent = $event_filter['event_graph_by_agent'];
|
||||
$event_graph_by_user_validator = $event_filter['event_graph_by_user_validator'];
|
||||
$event_graph_by_criticity = $event_filter['event_graph_by_criticity'];
|
||||
|
@ -1858,7 +1872,7 @@ function reporting_event_report_group(
|
|||
metaconsole_restore_db();
|
||||
}
|
||||
|
||||
// total_events
|
||||
// total_events.
|
||||
if ($return['data'] != '') {
|
||||
$return['total_events'] = count($return['data']);
|
||||
} else {
|
||||
|
@ -1911,14 +1925,14 @@ function reporting_event_report_module(
|
|||
|
||||
$event_filter = $content['style'];
|
||||
$return['show_summary_group'] = $event_filter['show_summary_group'];
|
||||
// filter
|
||||
// Filter.
|
||||
$show_summary_group = $event_filter['show_summary_group'];
|
||||
$filter_event_severity = json_decode($event_filter['filter_event_severity'], true);
|
||||
$filter_event_type = json_decode($event_filter['filter_event_type'], true);
|
||||
$filter_event_status = json_decode($event_filter['filter_event_status'], true);
|
||||
$filter_event_filter_search = $event_filter['event_filter_search'];
|
||||
|
||||
// graphs
|
||||
// Graphs.
|
||||
$event_graph_by_user_validator = $event_filter['event_graph_by_user_validator'];
|
||||
$event_graph_by_criticity = $event_filter['event_graph_by_criticity'];
|
||||
$event_graph_validated_vs_unvalidated = $event_filter['event_graph_validated_vs_unvalidated'];
|
||||
|
@ -1930,7 +1944,7 @@ function reporting_event_report_module(
|
|||
$metaconsole_dbtable = false;
|
||||
}
|
||||
|
||||
// data events
|
||||
// Data events.
|
||||
$data = reporting_get_module_detailed_event(
|
||||
$content['id_agent_module'],
|
||||
$content['period'],
|
||||
|
@ -1959,7 +1973,7 @@ function reporting_event_report_module(
|
|||
metaconsole_restore_db();
|
||||
}
|
||||
|
||||
// total_events
|
||||
// Total_events.
|
||||
if ($return['data'][0]['data'] != '') {
|
||||
$return['total_events'] = count($return['data'][0]['data']);
|
||||
} else {
|
||||
|
@ -2276,6 +2290,10 @@ function reporting_exception(
|
|||
$return['subtitle'] = __('Exception - Modules at critical or warning status');
|
||||
$return['subtype'] = __('Modules at critical or warning status');
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
|
||||
$return['description'] = $content['description'];
|
||||
|
@ -2286,7 +2304,7 @@ function reporting_exception(
|
|||
$return['resume'] = [];
|
||||
|
||||
if (empty($content['subitems'])) {
|
||||
// Get all the related data
|
||||
// Get all the related data.
|
||||
$sql = sprintf(
|
||||
'
|
||||
SELECT id_agent_module, server_name, operation
|
||||
|
@ -2303,10 +2321,10 @@ function reporting_exception(
|
|||
if ($exceptions === false) {
|
||||
$return['failed'] = __('There are no Agent/Modules defined');
|
||||
} else {
|
||||
// Get the very first not null value
|
||||
// Get the very first not null value.
|
||||
$i = 0;
|
||||
do {
|
||||
// Metaconsole connection
|
||||
// Metaconsole connection.
|
||||
$server_name = $exceptions[$i]['server_name'];
|
||||
if (($config['metaconsole'] == 1) && $server_name != '' && defined('METACONSOLE')) {
|
||||
$connection = metaconsole_get_connection($server_name);
|
||||
|
@ -2340,12 +2358,16 @@ function reporting_exception(
|
|||
$content['period']
|
||||
);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Default.
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$i++;
|
||||
|
||||
// Restore dbconnection
|
||||
// Restore dbconnection.
|
||||
if (($config['metaconsole'] == 1) && $server_name != '' && defined('METACONSOLE')) {
|
||||
metaconsole_restore_db();
|
||||
}
|
||||
|
@ -2357,7 +2379,7 @@ function reporting_exception(
|
|||
|
||||
$i = 0;
|
||||
foreach ($exceptions as $exc) {
|
||||
// Metaconsole connection
|
||||
// Metaconsole connection.
|
||||
$server_name = $exc['server_name'];
|
||||
if (($config['metaconsole'] == 1) && $server_name != '' && defined('METACONSOLE')) {
|
||||
$connection = metaconsole_get_connection($server_name);
|
||||
|
@ -6270,6 +6292,19 @@ function reporting_availability($report, $content, $date=false, $time=false)
|
|||
$return['resume']['avg'] = $avg;
|
||||
$return['resume']['max_text'] = $max_text;
|
||||
$return['resume']['max'] = $max;
|
||||
$return['fields'] = [];
|
||||
$return['fields']['total_time'] = $content['total_time'];
|
||||
$return['fields']['time_failed'] = $content['time_failed'];
|
||||
$return['fields']['time_in_ok_status'] = $content['time_in_ok_status'];
|
||||
$return['fields']['time_in_unknown_status'] = $content['time_in_unknown_status'];
|
||||
$return['fields']['time_of_not_initialized_module'] = $content['time_of_not_initialized_module'];
|
||||
$return['fields']['time_of_downtime'] = $content['time_of_downtime'];
|
||||
$return['fields']['total_checks'] = $content['total_checks'];
|
||||
$return['fields']['checks_failed'] = $content['checks_failed'];
|
||||
$return['fields']['checks_in_ok_status'] = $content['checks_in_ok_status'];
|
||||
$return['fields']['unknown_checks'] = $content['unknown_checks'];
|
||||
$return['fields']['agent_max_value'] = $content['agent_max_value'];
|
||||
$return['fields']['agent_min_value'] = $content['agent_min_value'];
|
||||
|
||||
return reporting_check_structure_content($return);
|
||||
}
|
||||
|
@ -7443,6 +7478,21 @@ function reporting_check_structure_content($report)
|
|||
$report['date']['to'] = '';
|
||||
}
|
||||
|
||||
if (!isset($report['fields'])) {
|
||||
$return['fields']['total_time'] = '';
|
||||
$return['fields']['time_failed'] = '';
|
||||
$return['fields']['time_in_ok_status'] = '';
|
||||
$return['fields']['time_in_unknown_status'] = '';
|
||||
$return['fields']['time_of_not_initialized_module'] = '';
|
||||
$return['fields']['time_of_downtime'] = '';
|
||||
$return['fields']['total_checks'] = '';
|
||||
$return['fields']['checks_failed'] = '';
|
||||
$return['fields']['checks_in_ok_status'] = '';
|
||||
$return['fields']['unknown_checks'] = '';
|
||||
$return['fields']['agent_max_value'] = '';
|
||||
$return['fields']['agent_min_value'] = '';
|
||||
}
|
||||
|
||||
return $report;
|
||||
}
|
||||
|
||||
|
|
|
@ -2907,24 +2907,6 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
io_safe_output($style),
|
||||
true
|
||||
);
|
||||
$sql = 'SELECT
|
||||
total_time,
|
||||
time_failed,
|
||||
time_in_ok_status,
|
||||
time_in_unknown_status,
|
||||
time_of_not_initialized_module,
|
||||
time_of_downtime,
|
||||
total_checks,
|
||||
checks_failed,
|
||||
checks_in_ok_status,
|
||||
unknown_checks,
|
||||
agent_max_value,
|
||||
agent_min_value
|
||||
FROM treport_content
|
||||
WHERE id_rc ='.$item['id_rc'];
|
||||
$fields = db_get_all_rows_sql(
|
||||
$sql
|
||||
);
|
||||
$same_agent_in_resume = '';
|
||||
|
||||
global $config;
|
||||
|
@ -2944,37 +2926,37 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
$table1->head[1] = __('Module');
|
||||
}
|
||||
|
||||
if ($fields[0]['total_time']) {
|
||||
if ($item['fields']['total_time']) {
|
||||
$table1->head[2] = __('Total time');
|
||||
} else {
|
||||
$table1->head[2] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['time_failed']) {
|
||||
if ($item['fields']['time_failed']) {
|
||||
$table1->head[3] = __('Time failed');
|
||||
} else {
|
||||
$table1->head[3] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['time_in_ok_status']) {
|
||||
if ($item['fields']['time_in_ok_status']) {
|
||||
$table1->head[4] = __('Time OK');
|
||||
} else {
|
||||
$table1->head[4] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['time_in_unknown_status']) {
|
||||
if ($item['fields']['time_in_unknown_status']) {
|
||||
$table1->head[5] = __('Time Unknown');
|
||||
} else {
|
||||
$table1->head[5] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['time_of_not_initialized_module']) {
|
||||
if ($item['fields']['time_of_not_initialized_module']) {
|
||||
$table1->head[6] = __('Time Not Init Module');
|
||||
} else {
|
||||
$table1->head[6] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['time_of_downtime']) {
|
||||
if ($item['fields']['time_of_downtime']) {
|
||||
$table1->head[7] = __('Time Downtime');
|
||||
} else {
|
||||
$table1->head[7] = __('');
|
||||
|
@ -3017,25 +2999,25 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
$table2->head[1] = __('Module');
|
||||
}
|
||||
|
||||
if ($fields[0]['total_checks']) {
|
||||
if ($item['fields']['total_checks']) {
|
||||
$table2->head[2] = __('Total checks');
|
||||
} else {
|
||||
$table2->head[2] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['checks_failed']) {
|
||||
if ($item['fields']['checks_failed']) {
|
||||
$table2->head[3] = __('Checks failed');
|
||||
} else {
|
||||
$table2->head[3] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['checks_in_ok_status']) {
|
||||
if ($item['fields']['checks_in_ok_status']) {
|
||||
$table2->head[4] = __('Checks OK');
|
||||
} else {
|
||||
$table2->head[4] = __('');
|
||||
}
|
||||
|
||||
if ($fields[0]['unknown_checks']) {
|
||||
if ($item['fields']['unknown_checks']) {
|
||||
$table2->head[5] = __('Checks Uknown');
|
||||
} else {
|
||||
$table2->head[5] = __('');
|
||||
|
@ -3061,67 +3043,67 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
$table_row[] = $row['agent'];
|
||||
$table_row[] = $row['availability_item'];
|
||||
|
||||
if ($row['time_total'] != 0 && $fields[0]['total_time']) {
|
||||
if ($row['time_total'] != 0 && $item['fields']['total_time']) {
|
||||
$table_row[] = human_time_description_raw(
|
||||
$row['time_total'],
|
||||
true
|
||||
);
|
||||
} else if ($row['time_total'] == 0 && $fields[0]['total_time']) {
|
||||
} else if ($row['time_total'] == 0 && $item['fields']['total_time']) {
|
||||
$table_row[] = '--';
|
||||
} else {
|
||||
$table_row[] = '';
|
||||
};
|
||||
|
||||
if ($row['time_error'] != 0 && $fields[0]['time_failed']) {
|
||||
if ($row['time_error'] != 0 && $item['fields']['time_failed']) {
|
||||
$table_row[] = human_time_description_raw(
|
||||
$row['time_error'],
|
||||
true
|
||||
);
|
||||
} else if ($row['time_error'] == 0 && $fields[0]['time_failed']) {
|
||||
} else if ($row['time_error'] == 0 && $item['fields']['time_failed']) {
|
||||
$table_row[] = '--';
|
||||
} else {
|
||||
$table_row[] = '';
|
||||
};
|
||||
|
||||
if ($row['time_ok'] != 0 && $fields[0]['time_in_ok_status']) {
|
||||
if ($row['time_ok'] != 0 && $item['fields']['time_in_ok_status']) {
|
||||
$table_row[] = human_time_description_raw(
|
||||
$row['time_ok'],
|
||||
true
|
||||
);
|
||||
} else if ($row['time_ok'] == 0 && $fields[0]['time_in_ok_status']) {
|
||||
} else if ($row['time_ok'] == 0 && $item['fields']['time_in_ok_status']) {
|
||||
$table_row[] = '--';
|
||||
} else {
|
||||
$table_row[] = '';
|
||||
};
|
||||
|
||||
if ($row['time_unknown'] != 0 && $fields[0]['time_in_unknown_status']) {
|
||||
if ($row['time_unknown'] != 0 && $item['fields']['time_in_unknown_status']) {
|
||||
$table_row[] = human_time_description_raw(
|
||||
$row['time_unknown'],
|
||||
true
|
||||
);
|
||||
} else if ($row['time_unknown'] == 0 && $fields[0]['time_in_unknown_status']) {
|
||||
} else if ($row['time_unknown'] == 0 && $item['fields']['time_in_unknown_status']) {
|
||||
$table_row[] = '--';
|
||||
} else {
|
||||
$table_row[] = '';
|
||||
};
|
||||
|
||||
if ($row['time_not_init'] != 0 && $fields[0]['time_of_not_initialized_module']) {
|
||||
if ($row['time_not_init'] != 0 && $item['fields']['time_of_not_initialized_module']) {
|
||||
$table_row[] = human_time_description_raw(
|
||||
$row['time_not_init'],
|
||||
true
|
||||
);
|
||||
} else if ($row['time_not_init'] == 0 && $fields[0]['time_of_not_initialized_module']) {
|
||||
} else if ($row['time_not_init'] == 0 && $item['fields']['time_of_not_initialized_module']) {
|
||||
$table_row[] = '--';
|
||||
} else {
|
||||
$table_row[] = '';
|
||||
};
|
||||
|
||||
if ($row['time_downtime'] != 0 && $fields[0]['time_of_downtime']) {
|
||||
if ($row['time_downtime'] != 0 && $item['fields']['time_of_downtime']) {
|
||||
$table_row[] = human_time_description_raw(
|
||||
$row['time_downtime'],
|
||||
true
|
||||
);
|
||||
} else if ($row['time_downtime'] == 0 && $fields[0]['time_of_downtime']) {
|
||||
} else if ($row['time_downtime'] == 0 && $item['fields']['time_of_downtime']) {
|
||||
$table_row[] = '--';
|
||||
} else {
|
||||
$table_row[] = '';
|
||||
|
@ -3132,22 +3114,22 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
$table_row2 = [];
|
||||
$table_row2[] = $row['agent'];
|
||||
$table_row2[] = $row['availability_item'];
|
||||
if ($fields[0]['total_checks']) {
|
||||
if ($item['fields']['total_checks']) {
|
||||
$table_row2[] = $row['checks_total'];
|
||||
} else {
|
||||
$table_row2[] = '';
|
||||
};
|
||||
if ($fields[0]['checks_failed']) {
|
||||
if ($item['fields']['checks_failed']) {
|
||||
$table_row2[] = $row['checks_error'];
|
||||
} else {
|
||||
$table_row2[] = '';
|
||||
};
|
||||
if ($fields[0]['checks_in_ok_status']) {
|
||||
if ($item['fields']['checks_in_ok_status']) {
|
||||
$table_row2[] = $row['checks_ok'];
|
||||
} else {
|
||||
$table_row2[] = '';
|
||||
};
|
||||
if ($fields[0]['unknown_checks']) {
|
||||
if ($item['fields']['unknown_checks']) {
|
||||
$table_row2[] = $row['checks_unknown'];
|
||||
} else {
|
||||
$table_row2[] = '';
|
||||
|
@ -3190,7 +3172,7 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
if ($item['resume']['resume'] && !empty($item['data'])) {
|
||||
$table1->width = '99%';
|
||||
$table1->data = [];
|
||||
if ((strpos($item['resume']['min_text'], $same_agent_in_resume) === false)) {
|
||||
if (empty($same_agent_in_resume) || (strpos($item['resume']['min_text'], $same_agent_in_resume) === false)) {
|
||||
$table1->head = [];
|
||||
$table1->head['max_text'] = __('Agent max value');
|
||||
$table1->head['max'] = __('Max Value');
|
||||
|
@ -3225,14 +3207,14 @@ function reporting_html_availability($table, $item, $pdf=0)
|
|||
).'%',
|
||||
'avg' => '<span style="font-size: 1.2em; font-weight:bold;">'.sla_truncate($item['resume']['avg'], $config['graph_precision']).'%</span>',
|
||||
];
|
||||
if ($fields[0]['agent_max_value'] == 0) {
|
||||
if ($item['fields']['agent_max_value'] == false) {
|
||||
$table1->head['max_text'] = '';
|
||||
$table1->data[0]['max_text'] = '';
|
||||
$table1->head['max'] = '';
|
||||
$table1->data[0]['max'] = '';
|
||||
}
|
||||
|
||||
if ($fields[0]['agent_min_value'] == 0) {
|
||||
if ($item['fields']['agent_min_value'] == false) {
|
||||
$table1->head['min_text'] = '';
|
||||
$table1->data[0]['min_text'] = '';
|
||||
$table1->head['min'] = '';
|
||||
|
|
Loading…
Reference in New Issue