Merge branch 'ent-9834-se-esta-sumando-el-peso-de-agente-con-modulo-no-init-como-si-fuera-unknown-en-servicio-manual' into 'develop'

Fix get agent status status codes

See merge request artica/pandorafms!5581
This commit is contained in:
Rafael Ameijeiras 2023-03-09 08:02:54 +00:00
commit 016c9aac39
1 changed files with 17 additions and 16 deletions

View File

@ -594,42 +594,43 @@ sub get_agent_status ($$$) {
# 2 -> AGENT_MODULE_STATUS_WARNING
# 0 -> AGENT_MODULE_STATUS_NORMAL
my $module_status = 3;
my $module_status = 4;
my $modules_async = 0;
foreach my $module (@modules) {
my $m_status = get_agentmodule_status($pa_config, $dbh,
$module->{'id_agente_modulo'});
#This is the order to check
# AGENT_MODULE_STATUS_CRITICAL_ALERT
# AGENT_MODULE_STATUS_CRITICAL_BAD
# AGENT_MODULE_STATUS_WARNING
# AGENT_MODULE_STATUS_UNKNOWN
# AGENT_MODULE_STATUS_NORMAL
if ($m_status == 4) {
$module_status = 4;
if ($m_status == MODULE_CRITICAL) {
$module_status = MODULE_CRITICAL;
}
elsif ($module_status != 4) {
if ($m_status == 1) {
$module_status = 1;
elsif ($module_status != MODULE_CRITICAL) {
if ($m_status == MODULE_WARNING) {
$module_status = MODULE_WARNING;
}
elsif ($module_status != 1) {
if ($m_status == 2) {
$module_status = 2;
elsif ($module_status != MODULE_WARNING) {
if ($m_status == MODULE_UNKNOWN) {
$module_status = MODULE_UNKNOWN;
}
elsif ($module_status != 2) {
if ($m_status == 3) {
$module_status = 3;
elsif ($module_status != MODULE_UNKNOWN) {
if ($m_status == MODULE_NORMAL) {
$module_status = MODULE_NORMAL;
}
elsif ($module_status != 3) {
if ($m_status == 0) {
$module_status = 0;
elsif ($module_status != MODULE_NORMAL) {
if($m_status == MODULE_NOTINIT) {
$module_status = MODULE_NOTINIT;
}
}
}
}
}
my $module_type = get_db_value($dbh, 'SELECT id_tipo_modulo
FROM tagente_modulo
WHERE id_agente_modulo = ?', $module->{'id_agente_modulo'});