diff --git a/pandora_agents/unix/DEBIAN/control b/pandora_agents/unix/DEBIAN/control
index 305342f0d7..9fa2a98d18 100644
--- a/pandora_agents/unix/DEBIAN/control
+++ b/pandora_agents/unix/DEBIAN/control
@@ -1,5 +1,5 @@
package: pandorafms-agent-unix
-Version: 7.0NG.733-190328
+Version: 7.0NG.733-190402
Architecture: all
Priority: optional
Section: admin
diff --git a/pandora_agents/unix/DEBIAN/make_deb_package.sh b/pandora_agents/unix/DEBIAN/make_deb_package.sh
index 8b8ec904c5..1e632346c8 100644
--- a/pandora_agents/unix/DEBIAN/make_deb_package.sh
+++ b/pandora_agents/unix/DEBIAN/make_deb_package.sh
@@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-pandora_version="7.0NG.733-190328"
+pandora_version="7.0NG.733-190402"
echo "Test if you has the tools for to make the packages."
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
diff --git a/pandora_agents/unix/pandora_agent b/pandora_agents/unix/pandora_agent
index 093bc078f5..57d00521cd 100755
--- a/pandora_agents/unix/pandora_agent
+++ b/pandora_agents/unix/pandora_agent
@@ -42,7 +42,7 @@ my $Sem = undef;
my $ThreadSem = undef;
use constant AGENT_VERSION => '7.0NG.733';
-use constant AGENT_BUILD => '190328';
+use constant AGENT_BUILD => '190402';
# Agent log default file size maximum and instances
use constant DEFAULT_MAX_LOG_SIZE => 600000;
diff --git a/pandora_agents/unix/pandora_agent.redhat.spec b/pandora_agents/unix/pandora_agent.redhat.spec
index d2597d9f3e..49d1ffb1ac 100644
--- a/pandora_agents/unix/pandora_agent.redhat.spec
+++ b/pandora_agents/unix/pandora_agent.redhat.spec
@@ -3,7 +3,7 @@
#
%define name pandorafms_agent_unix
%define version 7.0NG.733
-%define release 190328
+%define release 190402
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}
diff --git a/pandora_agents/unix/pandora_agent.spec b/pandora_agents/unix/pandora_agent.spec
index fe756636b4..34bb201378 100644
--- a/pandora_agents/unix/pandora_agent.spec
+++ b/pandora_agents/unix/pandora_agent.spec
@@ -3,7 +3,7 @@
#
%define name pandorafms_agent_unix
%define version 7.0NG.733
-%define release 190328
+%define release 190402
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}
diff --git a/pandora_agents/unix/pandora_agent_installer b/pandora_agents/unix/pandora_agent_installer
index 0e0229707f..72097cde2c 100755
--- a/pandora_agents/unix/pandora_agent_installer
+++ b/pandora_agents/unix/pandora_agent_installer
@@ -10,7 +10,7 @@
# **********************************************************************
PI_VERSION="7.0NG.733"
-PI_BUILD="190328"
+PI_BUILD="190402"
OS_NAME=`uname -s`
FORCE=0
diff --git a/pandora_agents/win32/installer/pandora.mpi b/pandora_agents/win32/installer/pandora.mpi
index 410edf850f..02d0b4098e 100644
--- a/pandora_agents/win32/installer/pandora.mpi
+++ b/pandora_agents/win32/installer/pandora.mpi
@@ -186,7 +186,7 @@ UpgradeApplicationID
{}
Version
-{190328}
+{190402}
ViewReadme
{Yes}
diff --git a/pandora_agents/win32/pandora.cc b/pandora_agents/win32/pandora.cc
index 4eca7665c2..a77673ee25 100644
--- a/pandora_agents/win32/pandora.cc
+++ b/pandora_agents/win32/pandora.cc
@@ -30,7 +30,7 @@ using namespace Pandora;
using namespace Pandora_Strutils;
#define PATH_SIZE _MAX_PATH+1
-#define PANDORA_VERSION ("7.0NG.733(Build 190328)")
+#define PANDORA_VERSION ("7.0NG.733(Build 190402)")
string pandora_path;
string pandora_dir;
diff --git a/pandora_agents/win32/versioninfo.rc b/pandora_agents/win32/versioninfo.rc
index 0e13be6bb3..d881ed70d4 100644
--- a/pandora_agents/win32/versioninfo.rc
+++ b/pandora_agents/win32/versioninfo.rc
@@ -11,7 +11,7 @@ BEGIN
VALUE "LegalCopyright", "Artica ST"
VALUE "OriginalFilename", "PandoraAgent.exe"
VALUE "ProductName", "Pandora FMS Windows Agent"
- VALUE "ProductVersion", "(7.0NG.733(Build 190328))"
+ VALUE "ProductVersion", "(7.0NG.733(Build 190402))"
VALUE "FileVersion", "1.0.0.0"
END
END
diff --git a/pandora_console/DEBIAN/control b/pandora_console/DEBIAN/control
index 1fd042be78..3a1b872021 100644
--- a/pandora_console/DEBIAN/control
+++ b/pandora_console/DEBIAN/control
@@ -1,5 +1,5 @@
package: pandorafms-console
-Version: 7.0NG.733-190328
+Version: 7.0NG.733-190402
Architecture: all
Priority: optional
Section: admin
diff --git a/pandora_console/DEBIAN/make_deb_package.sh b/pandora_console/DEBIAN/make_deb_package.sh
index c4e5d98fa3..deb3d165bd 100644
--- a/pandora_console/DEBIAN/make_deb_package.sh
+++ b/pandora_console/DEBIAN/make_deb_package.sh
@@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-pandora_version="7.0NG.733-190328"
+pandora_version="7.0NG.733-190402"
package_pear=0
package_pandora=1
diff --git a/pandora_console/extras/mr/27.sql b/pandora_console/extras/mr/27.sql
new file mode 100644
index 0000000000..f85064c9eb
--- /dev/null
+++ b/pandora_console/extras/mr/27.sql
@@ -0,0 +1,6 @@
+START TRANSACTION;
+
+UPDATE tuser_task SET parameters = 'a:5:{i:0;a:6:{s:11:\"description\";s:28:\"Report pending to be created\";s:5:\"table\";s:7:\"treport\";s:8:\"field_id\";s:9:\"id_report\";s:10:\"field_name\";s:4:\"name\";s:4:\"type\";s:3:\"int\";s:9:\"acl_group\";s:8:\"id_group\";}i:1;a:2:{s:11:\"description\";s:46:\"Send to email addresses (separated by a comma)\";s:4:\"type\";s:4:\"text\";}i:2;a:2:{s:11:\"description\";s:7:\"Subject\";s:8:\"optional\";i:1;}i:3;a:3:{s:11:\"description\";s:7:\"Message\";s:4:\"type\";s:4:\"text\";s:8:\"optional\";i:1;}i:4;a:2:{s:11:\"description\";s:11:\"Report Type\";s:4:\"type\";s:11:\"report_type\";}}' where function_name = "cron_task_generate_report";
+
+
+COMMIT;
\ No newline at end of file
diff --git a/pandora_console/extras/pandora_diag.php b/pandora_console/extras/pandora_diag.php
index d6cd017087..10e9fbfd42 100644
--- a/pandora_console/extras/pandora_diag.php
+++ b/pandora_console/extras/pandora_diag.php
@@ -139,7 +139,7 @@ function get_logs_size($file)
function get_status_logs($path)
{
$status_server_log = '';
- $size_server_log = number_format(get_logs_size($path));
+ $size_server_log = get_logs_size($path);
if ($size_server_log <= 1048576) {
$status_server_log = "Normal Status   You have less than 10 MB of logs";
} else {
@@ -157,9 +157,9 @@ function percentage_modules_per_agent()
$total_modules = db_get_value_sql('SELECT count(*) FROM tagente_modulo');
$average_modules_per_agent = ($total_modules / $total_agents);
if ($average_modules_per_agent <= 40) {
- $status_average_modules = "Normal Status   The average of modules per agent is less than 40 percent";
+ $status_average_modules = "Normal Status   The average of modules per agent is less than 40";
} else {
- $status_average_modules = "Warning Status  The average of modules per agent is more than 40 percent. You can have performance problems";
+ $status_average_modules = "Warning Status  The average of modules per agent is more than 40. You can have performance problems";
}
return $status_average_modules;
@@ -202,9 +202,9 @@ function interval_average_of_network_modules()
$average_time = ((int) $total_module_interval_time / $total_network_modules);
if ($average_time < 180) {
- $status_average_modules = "Warning Status   The system has a lot of load and a very fine configuration is required";
+ $status_average_modules = "Warning Status   The system has a lot of load (average time $average_time) and a very fine configuration is required";
} else {
- $status_average_modules = "Normal Status   The system has an acceptable charge";
+ $status_average_modules = "Normal Status   The system has an acceptable charge (average time $average_time) ";
}
if ($average_time == 0) {
@@ -274,6 +274,7 @@ if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') {
}
$path_server_logs = '/log/pandora/pandora_server.log';
+$path_err_logs = '/log/pandora/pandora_server.error';
$path_console_logs = '/www/html/pandora_console/pandora_console.log';
$innodb_log_file_size_min_rec_value = '64M';
$innodb_log_buffer_size_min_rec_value = '16M';
@@ -710,6 +711,8 @@ render_info_data(
render_row(number_format((get_logs_size($path_server_logs) / 1048576), 3).'M', 'Size server logs (current value)');
render_row(get_status_logs($path_server_logs), 'Status server logs');
+ render_row(number_format((get_logs_size($path_err_logs) / 1048576), 3).'M', 'Size error logs (current value)');
+ render_row(get_status_logs($path_err_logs), 'Status error logs');
render_row(number_format((get_logs_size($path_console_logs) / 1048576), 3).'M', 'Size console logs (current value)');
render_row(get_status_logs($path_console_logs), 'Status console logs');
diff --git a/pandora_console/extras/pandoradb_migrate_6.0_to_7.0.mysql.sql b/pandora_console/extras/pandoradb_migrate_6.0_to_7.0.mysql.sql
index 6e5e2ebcc9..323e7ee0d8 100644
--- a/pandora_console/extras/pandoradb_migrate_6.0_to_7.0.mysql.sql
+++ b/pandora_console/extras/pandoradb_migrate_6.0_to_7.0.mysql.sql
@@ -1199,13 +1199,13 @@ ALTER TABLE titem MODIFY `source_data` int(10) unsigned;
INSERT INTO `tconfig` (`token`, `value`) VALUES ('big_operation_step_datos_purge', '100');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('small_operation_step_datos_purge', '1000');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('days_autodisable_deletion', '30');
-INSERT INTO `tconfig` (`token`, `value`) VALUES ('MR', 26);
+INSERT INTO `tconfig` (`token`, `value`) VALUES ('MR', 27);
INSERT INTO `tconfig` (`token`, `value`) VALUES ('custom_docs_logo', 'default_docs.png');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('custom_support_logo', 'default_support.png');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('custom_logo_white_bg_preview', 'pandora_logo_head_white_bg.png');
UPDATE tconfig SET value = 'https://licensing.artica.es/pandoraupdate7/server.php' WHERE token='url_update_manager';
DELETE FROM `tconfig` WHERE `token` = 'current_package_enterprise';
-INSERT INTO `tconfig` (`token`, `value`) VALUES ('current_package_enterprise', '733');
+INSERT INTO `tconfig` (`token`, `value`) VALUES ('current_package_enterprise', '734');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('status_monitor_fields', 'policy,agent,data_type,module_name,server_type,interval,status,graph,warn,data,timestamp');
-- ---------------------------------------------------------------------
@@ -2058,3 +2058,8 @@ INSERT INTO `trecon_script` (`name`,`description`,`script`,`macros`) VALUES ('Di
-- Add column in table `tagent_custom_fields`
-- ----------------------------------------------------------------------
ALTER TABLE tagent_custom_fields ADD COLUMN `combo_values` VARCHAR(255) DEFAULT '';
+
+-- ----------------------------------------------------------------------
+-- Update table `tuser_task`
+-- ----------------------------------------------------------------------
+UPDATE tuser_task set parameters = 'a:5:{i:0;a:6:{s:11:\"description\";s:28:\"Report pending to be created\";s:5:\"table\";s:7:\"treport\";s:8:\"field_id\";s:9:\"id_report\";s:10:\"field_name\";s:4:\"name\";s:4:\"type\";s:3:\"int\";s:9:\"acl_group\";s:8:\"id_group\";}i:1;a:2:{s:11:\"description\";s:46:\"Send to email addresses (separated by a comma)\";s:4:\"type\";s:4:\"text\";}i:2;a:2:{s:11:\"description\";s:7:\"Subject\";s:8:\"optional\";i:1;}i:3;a:3:{s:11:\"description\";s:7:\"Message\";s:4:\"type\";s:4:\"text\";s:8:\"optional\";i:1;}i:4;a:2:{s:11:\"description\";s:11:\"Report Type\";s:4:\"type\";s:11:\"report_type\";}}' where function_name = "cron_task_generate_report";
diff --git a/pandora_console/godmode/agentes/configurar_agente.php b/pandora_console/godmode/agentes/configurar_agente.php
index 9c10099042..74a5c3dc9f 100644
--- a/pandora_console/godmode/agentes/configurar_agente.php
+++ b/pandora_console/godmode/agentes/configurar_agente.php
@@ -160,7 +160,7 @@ $module_macros = [];
if ($create_agent) {
$mssg_warning = 0;
$alias_safe_output = io_safe_output(get_parameter('alias', ''));
- $alias = io_safe_input(trim(preg_replace('/[\/\\\|%#&$-]/', '', $alias_safe_output)));
+ $alias = io_safe_input(trim(preg_replace('/[\/\\\|%#&$]/', '', $alias_safe_output)));
$alias_as_name = (int) get_parameter_post('alias_as_name', 0);
$direccion_agente = (string) get_parameter_post('direccion', '');
$unique_ip = (int) get_parameter_post('unique_ip', 0);
@@ -766,7 +766,7 @@ if ($update_agent) {
$id_agente = (int) get_parameter_post('id_agente');
$nombre_agente = str_replace('`', '‘', (string) get_parameter_post('agente', ''));
$alias_safe_output = io_safe_output(get_parameter('alias', ''));
- $alias = io_safe_input(trim(preg_replace('/[\/\\\|%#&$-]/', '', $alias_safe_output)));
+ $alias = io_safe_input(trim(preg_replace('/[\/\\\|%#&$]/', '', $alias_safe_output)));
$alias_as_name = (int) get_parameter_post('alias_as_name', 0);
$direccion_agente = (string) get_parameter_post('direccion', '');
$unique_ip = (int) get_parameter_post('unique_ip', 0);
diff --git a/pandora_console/godmode/reporting/reporting_builder.php b/pandora_console/godmode/reporting/reporting_builder.php
index ed4c3ec3a1..4e88fd5133 100755
--- a/pandora_console/godmode/reporting/reporting_builder.php
+++ b/pandora_console/godmode/reporting/reporting_builder.php
@@ -117,10 +117,10 @@ if ($schedule_report != '') {
$date = date(DATE_FORMAT);
$time = date(TIME_FORMAT);
$parameters[0] = get_parameter('id_schedule_report');
- // $parameters[1] = db_get_value('schedule_email', 'treport', 'id_report', $id_report);
$parameters[1] = get_parameter('schedule_email_address');
$parameters[2] = get_parameter('schedule_subject', '');
$parameters[3] = get_parameter('schedule_email', '');
+ $parameters[4] = get_parameter('report_type', '');
$parameters['first_execution'] = strtotime($date.' '.$time);
$values = [
@@ -141,7 +141,7 @@ if ($schedule_report != '') {
echo '
';
}
-// Other Checks for the edit the reports
+// Other Checks for the edit the reports.
if ($idReport != 0) {
$report = db_get_row_filter('treport', ['id_report' => $idReport]);
$type_access_selected = reports_get_type_access($report);
@@ -293,7 +293,7 @@ switch ($action) {
$temp = [];
foreach ($items as $item) {
- // Remove the contents from the block to sort
+ // Remove the contents from the block to sort.
if (array_search($item['id_rc'], $ids) === false) {
$temp[$item['order']] = $item['id_rc'];
}
@@ -1305,7 +1305,6 @@ switch ($action) {
$values['exception_condition_value'] = get_parameter('exception_condition_value');
$values['id_module_group'] = get_parameter('combo_modulegroup');
$values['id_group'] = get_parameter('combo_group');
- $values['show_extended_events'] = get_parameter('include_extended_events');
$values['server_name'] = get_parameter('server_name');
$server_id = (int) get_parameter('server_id');
if ($server_id != 0) {
@@ -1702,7 +1701,6 @@ switch ($action) {
$values['exception_condition_value'] = get_parameter('exception_condition_value');
$values['id_module_group'] = get_parameter('combo_modulegroup');
$values['id_group'] = get_parameter('combo_group');
- $values['show_extended_events'] = get_parameter('include_extended_events');
if ((($values['type'] == 'custom_graph') or ($values['type'] == 'automatic_custom_graph')) && ($values['id_gs'] == 0 || $values['id_gs'] == '')) {
diff --git a/pandora_console/include/config_process.php b/pandora_console/include/config_process.php
index a1b9b6e302..0f0f8d3872 100644
--- a/pandora_console/include/config_process.php
+++ b/pandora_console/include/config_process.php
@@ -20,7 +20,7 @@
/**
* Pandora build version and version
*/
-$build_version = 'PC190328';
+$build_version = 'PC190402';
$pandora_version = 'v7.0NG.733';
// Do not overwrite default timezone set if defined.
diff --git a/pandora_console/include/functions_config.php b/pandora_console/include/functions_config.php
index 5435de5b8a..bab701ba50 100644
--- a/pandora_console/include/functions_config.php
+++ b/pandora_console/include/functions_config.php
@@ -81,11 +81,6 @@ function config_update_value($token, $value)
$value = ($value);
}
- if (!isset($config[$token])) {
- $config[$token] = $value;
- return (bool) config_create_value($token, io_safe_input($value));
- }
-
// If it has not changed.
if ($config[$token] == $value) {
return true;
@@ -100,10 +95,18 @@ function config_update_value($token, $value)
['token' => $token]
);
- if ($result === 0) {
+ if ($result == 0) {
return true;
} else {
- return (bool) $result;
+ if (!isset($config[$token])) {
+ $config[$token] = $value;
+ return (bool) config_create_value(
+ $token,
+ io_safe_input($value)
+ );
+ } else {
+ return (bool) $result;
+ }
}
}
diff --git a/pandora_console/include/functions_cron.php b/pandora_console/include/functions_cron.php
index e56a3d4a52..4bb7f5c752 100644
--- a/pandora_console/include/functions_cron.php
+++ b/pandora_console/include/functions_cron.php
@@ -429,8 +429,10 @@ function cron_list_table()
}
$email = $args[1];
+ $report_type = $args[4];
$data[2] .= '
- '.__('Report').": ";
$data[2] .= $report['name'].'';
+ $data[2] .= '
- '.__('Report type').': '.$report_type;
$data[2] .= '
- '.__('Email').": ";
$data[2] .= ui_print_truncate_text($email, 60, false).'';
break;
diff --git a/pandora_console/include/functions_reporting.php b/pandora_console/include/functions_reporting.php
index 3761c0f904..1ff0529651 100755
--- a/pandora_console/include/functions_reporting.php
+++ b/pandora_console/include/functions_reporting.php
@@ -7771,11 +7771,11 @@ function reporting_get_agents_detailed_event(
foreach ($events as $eventRow) {
foreach ($eventRow as $k => $event) {
- // First pass along the class of this row
+ // First pass along the class of this row.
$table->cellclass[$k][1] = $table->cellclass[$k][2] = $table->cellclass[$k][4] = $table->cellclass[$k][5] = $table->cellclass[$k][6] = get_priority_class($event['criticity']);
$data = [];
- // Colored box
+ // Colored box.
switch ($event['estado']) {
case 0:
$img_st = 'images/star.png';
diff --git a/pandora_console/include/functions_reporting_xml.php b/pandora_console/include/functions_reporting_xml.php
index 1873859bdb..0179a27b06 100644
--- a/pandora_console/include/functions_reporting_xml.php
+++ b/pandora_console/include/functions_reporting_xml.php
@@ -31,7 +31,7 @@ function reporting_xml_get_report($report, $filename, $return=false)
unset($report['private']);
unset($report['custom_logo']);
// ----------------------------------------------------------------------
- // change agent name
+ // change agent name.
if (count($report['contents']) > 0) {
for ($i = 0; $i < count($report['contents']); $i++) {
$aux = explode('-', $report['contents'][$i]['subtitle']);
@@ -44,16 +44,18 @@ function reporting_xml_get_report($report, $filename, $return=false)
$xml = preg_replace('/(<[^>]+>)(<[^>]+>)(<[^>]+>)/', "$1\n$2\n$3", $xml);
$xml = preg_replace('/(<[^>]+>)(<[^>]+>)/', "$1\n$2", $xml);
- // Return if is marked to return
+ // Return if is marked to return.
if ($return) {
return $xml;
}
- // Download if marked to download
- header('Content-Type: application/xml; charset=UTF-8');
- header('Content-Disposition: attachment; filename="'.$filename.'.xml"');
+ // Download if marked to download.
+ if ($filename === false) {
+ header('Content-Type: application/xml; charset=UTF-8');
+ header('Content-Disposition: attachment; filename="'.$filename.'.xml"');
+ }
- // Clean the output buffer
+ // Clean the output buffer.
ob_clean();
echo $xml;
diff --git a/pandora_console/install.php b/pandora_console/install.php
index 6e6bbb4d77..0ddd09fd0b 100644
--- a/pandora_console/install.php
+++ b/pandora_console/install.php
@@ -129,7 +129,7 @@