Module: nagvis
Branch: master
Commit: 51b6e19c1a363817881add7d7212e24503989e73
URL:    
http://nagvis.git.sourceforge.net/git/gitweb.cgi?p=nagvis/nagvis;a=commit;h=51b6e19c1a363817881add7d7212e24503989e73

Author: Lars Michelsen <[email protected]>
Date:   Fri Jul  2 19:26:23 2010 +0200

#324 The ndomy backend handles service acks/downtimes correctly for hostgroup 
objects

---

 share/server/core/classes/GlobalBackendndomy.php |   23 +++++++++++----------
 1 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/share/server/core/classes/GlobalBackendndomy.php 
b/share/server/core/classes/GlobalBackendndomy.php
index 7018ca9..21ebf16 100644
--- a/share/server/core/classes/GlobalBackendndomy.php
+++ b/share/server/core/classes/GlobalBackendndomy.php
@@ -903,20 +903,21 @@ class GlobalBackendndomy implements 
GlobalBackendInterface {
                if($options & 2)
                        return $arrReturn;
                
+               // FIXME: Does not handle host downtimes/acks
                $QUERYHANDLE = $this->mysqlQuery('SELECT 
                        o.name1,
                        SUM(IF(ss.has_been_checked=0,1,0)) AS pending,
-                       SUM(IF((ss.'.$stateAttr.'=0 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.scheduled_downtime_depth=0),1,0)) AS 
ok,
-                       SUM(IF((ss.'.$stateAttr.'=0 AND ss.has_been_checked!=0 
AND (ss.scheduled_downtime_depth!=0 OR ss.scheduled_downtime_depth!=0)),1,0)) 
AS ok_downtime,
-                       SUM(IF((ss.'.$stateAttr.'=1 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.scheduled_downtime_depth=0),1,0)) AS 
warning,
-                       SUM(IF((ss.'.$stateAttr.'=1 AND ss.has_been_checked!=0 
AND (ss.scheduled_downtime_depth!=0 OR ss.scheduled_downtime_depth!=0)),1,0)) 
AS warning_downtime,
-                       SUM(IF((ss.'.$stateAttr.'=1 AND ss.has_been_checked!=0 
AND (ss.problem_has_been_acknowledged=1 OR 
ss.problem_has_been_acknowledged=1)),1,0)) AS warning_ack,
-                       SUM(IF((ss.'.$stateAttr.'=2 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.scheduled_downtime_depth=0),1,0)) AS 
critical,
-                       SUM(IF((ss.'.$stateAttr.'=2 AND ss.has_been_checked!=0 
AND (ss.scheduled_downtime_depth!=0 OR ss.scheduled_downtime_depth!=0)),1,0)) 
AS critical_downtime,
-                       SUM(IF((ss.'.$stateAttr.'=2 AND ss.has_been_checked!=0 
AND (ss.problem_has_been_acknowledged=1 OR 
ss.problem_has_been_acknowledged=1)),1,0)) AS critical_ack,
-                       SUM(IF((ss.'.$stateAttr.'=3 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.scheduled_downtime_depth=0),1,0)) AS 
unknown,
-                       SUM(IF((ss.'.$stateAttr.'=3 AND ss.has_been_checked!=0 
AND (ss.scheduled_downtime_depth!=0 OR ss.scheduled_downtime_depth!=0)),1,0)) 
AS unknown_downtime,
-                       SUM(IF((ss.'.$stateAttr.'=3 AND ss.has_been_checked!=0 
AND (ss.problem_has_been_acknowledged=1 OR 
ss.problem_has_been_acknowledged=1)),1,0)) AS unknown_ack
+                       SUM(IF((ss.'.$stateAttr.'=0 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0),1,0)) AS ok,
+                       SUM(IF((ss.'.$stateAttr.'=0 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth!=0),1,0)) AS ok_downtime,
+                       SUM(IF((ss.'.$stateAttr.'=1 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.problem_has_been_acknowledged=0),1,0)) 
AS warning,
+                       SUM(IF((ss.'.$stateAttr.'=1 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth!=0),1,0)) AS warning_downtime,
+                       SUM(IF((ss.'.$stateAttr.'=1 AND ss.has_been_checked!=0 
AND ss.problem_has_been_acknowledged=1),1,0)) AS warning_ack,
+                       SUM(IF((ss.'.$stateAttr.'=2 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.problem_has_been_acknowledged=0),1,0)) 
AS critical,
+                       SUM(IF((ss.'.$stateAttr.'=2 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth!=0),1,0)) AS critical_downtime,
+                       SUM(IF((ss.'.$stateAttr.'=2 AND ss.has_been_checked!=0 
AND ss.problem_has_been_acknowledged=1),1,0)) AS critical_ack,
+                       SUM(IF((ss.'.$stateAttr.'=3 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth=0 AND ss.problem_has_been_acknowledged=0),1,0)) 
AS unknown,
+                       SUM(IF((ss.'.$stateAttr.'=3 AND ss.has_been_checked!=0 
AND ss.scheduled_downtime_depth!=0),1,0)) AS unknown_downtime,
+                       SUM(IF((ss.'.$stateAttr.'=3 AND ss.has_been_checked!=0 
AND ss.problem_has_been_acknowledged=1),1,0)) AS unknown_ack
                        FROM 
                                '.$this->dbPrefix.'objects AS o,
                                '.$this->dbPrefix.'hostgroups AS hg,


------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Nagvis-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nagvis-checkins

Reply via email to