From 6ab46fe63547a6f739d2e13bcd3d2daaba2abea6 Mon Sep 17 00:00:00 2001 From: hkosaka Date: Tue, 5 Aug 2014 07:15:52 +0000 Subject: [PATCH] 2014-08-05 Hirofumi Kosaka * lib/PandoraFMS/Core.pm: Suppress "going to normal (warning, critical)" events from "unknown" status, if you disable "Throw unknown events" at the Console. git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@10380 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f --- pandora_server/ChangeLog | 6 ++++++ pandora_server/lib/PandoraFMS/Core.pm | 13 +++++++++++++ 2 files changed, 19 insertions(+) diff --git a/pandora_server/ChangeLog b/pandora_server/ChangeLog index 7f33e4072f..e894894043 100644 --- a/pandora_server/ChangeLog +++ b/pandora_server/ChangeLog @@ -1,3 +1,9 @@ +2014-08-05 Hirofumi Kosaka + + * lib/PandoraFMS/Core.pm: Suppress "going to normal (warning, + critical)" events from "unknown" status, if you disable "Throw + unknown events" at the Console. + 2014-08-05 Hirofumi Kosaka * lib/PandoraFMS/Core.pm: Fixed that unknown modules would be diff --git a/pandora_server/lib/PandoraFMS/Core.pm b/pandora_server/lib/PandoraFMS/Core.pm index b670d2a7c2..590101e048 100644 --- a/pandora_server/lib/PandoraFMS/Core.pm +++ b/pandora_server/lib/PandoraFMS/Core.pm @@ -3436,6 +3436,19 @@ sub generate_status_event ($$$$$$$$) { return; } + # disable event just recovering from 'Unknown' without status change + if($last_status == 3 && $status == $last_known_status && $module->{'disabled_types_event'} ) { + my $disabled_types_event; + eval { + local $SIG{__DIE__}; + $disabled_types_event = decode_json($module->{'disabled_types_event'}); + }; + + if ($disabled_types_event->{'going_unknown'}) { + return; + } + } + # Mark as "validated" any previous event for this module pandora_validate_event ($pa_config, $module->{'id_agente_modulo'}, $dbh);