diff options
| author | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2002-05-12 18:01:48 +0000 |
|---|---|---|
| committer | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2002-05-12 18:01:48 +0000 |
| commit | 4855aae12c151e6473922b2a5d3de5c7bafe9e48 (patch) | |
| tree | 7927ac6a64d439030c4c453718b3ece248aa325a /frontends/php/include | |
| parent | 8ffad73609ee2547a179e11d11f0258a7bc0f0b1 (diff) | |
| download | zabbix-4855aae12c151e6473922b2a5d3de5c7bafe9e48.tar.gz zabbix-4855aae12c151e6473922b2a5d3de5c7bafe9e48.tar.xz zabbix-4855aae12c151e6473922b2a5d3de5c7bafe9e48.zip | |
- support for new trigger status - UNKNOWN (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@360 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/include')
| -rw-r--r-- | frontends/php/include/config.inc | 63 |
1 files changed, 53 insertions, 10 deletions
diff --git a/frontends/php/include/config.inc b/frontends/php/include/config.inc index fc13560c..e2676aa8 100644 --- a/frontends/php/include/config.inc +++ b/frontends/php/include/config.inc @@ -1099,6 +1099,7 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; function update_trigger_status($triggerid,$status) { + add_alarm($triggerid,3); $sql="update triggers set istrue=$status where triggerid=$triggerid"; return DBexecute($sql); } @@ -1494,6 +1495,22 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; function add_alarm($triggerid,$istrue) { + $sql="select max(clock) from alarms"; + $result=DBselect($sql); + if(DBnum_rows($result) == 1) + { + $row=DBfetch($result); + $sql="select istrue from alarms where clock=".$row[0]; + $result=DBselect($sql); + if(DBnum_rows($result) == 1) + { + $row=DBfetch($result); + if($row["istrue"] == $istrue) + { + return 0; + } + } + } $now=time(); $sql="insert into alarms(triggerid,clock,istrue) values($triggerid,$now,$istrue)"; return DBexecute($sql); @@ -1505,11 +1522,11 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; { global $ERROR_MSG; - if(!check_right("Trigger","A",0)) - { - $ERROR_MSG="Insufficient permissions"; - return 0; - } +// if(!check_right("Trigger","A",0)) +// { +// $ERROR_MSG="Insufficient permissions"; +// return 0; +// } $description=addslashes($description); $sql="insert into triggers (description,priority,istrue,comments,url) values ('$description',$priority,$istrue,'$comments','$url')"; @@ -1522,6 +1539,7 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; $triggerid=DBinsert_id($result,"triggers","triggerid"); # echo $triggerid,"<br>"; + add_alarm($triggerid,3); $expression=implode_exp($expression,$triggerid); $sql="update triggers set expression='$expression' where triggerid=$triggerid"; @@ -1575,7 +1593,14 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; } $expression=implode_exp($expression,$triggerid); - if($istrue != 2) $istrue="istrue"; + if($istrue != 2) + { + $istrue="istrue"; + } + else + { + add_alarm($triggerid,3); + } $sql="update triggers set expression='$expression',description='$description',priority=$priority,istrue=$istrue,comments='$comments',url='$url' where triggerid=$triggerid"; return DBexecute($sql); } @@ -2612,7 +2637,7 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; $expression=""; $description=""; $priority=0; - $istrue=0; + $istrue=3; $comments=""; $url=""; } @@ -2817,6 +2842,7 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; $state=-1; $true_time=0; $false_time=0; + $unknown_time=0; $time=$min; $max=time(); for($i=0;$i<DBnum_rows($result);$i++) @@ -2839,6 +2865,10 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; { $true_time+=$diff; } + if($state == 3) + { + $unknown_time+=$diff; + } } else if($state==0) { @@ -2850,6 +2880,11 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; $true_time+=$diff; $state=$istrue; } + else if($state==3) + { + $unknown_time+=$diff; + $state=$istrue; + } } if(DBnum_rows($result)==0) @@ -2862,16 +2897,24 @@ where h.hostid=i.hostid and i.itemid=f.itemid and f.triggerid=$triggerid"; { $false_time=$false_time+$max-$time; } - else + elseif($state==1) { $true_time=$true_time+$max-$time; } + elseif($state==3) + { + $unknown_time=$unknown_time+$max-$time; + } + } + $total_time=$true_time+$false_time+$unknown_time; $ret["true_time"]=$true_time; $ret["false_time"]=$false_time; - $ret["true"]=(100*$true_time)/($true_time+$false_time); - $ret["false"]=(100*$false_time)/($true_time+$false_time); + $ret["unknown_time"]=$unknown_time; + $ret["true"]=(100*$true_time)/$total_time; + $ret["false"]=(100*$false_time)/$total_time; + $ret["unknown"]=(100*$unknown_time)/$total_time; return $ret; } |
