diff options
-rw-r--r-- | etc/inc/vslb.inc | 16 | ||||
-rwxr-xr-x | usr/local/www/status_lb_vs.php | 18 |
2 files changed, 30 insertions, 4 deletions
diff --git a/etc/inc/vslb.inc b/etc/inc/vslb.inc index 064438e..e62a49a 100644 --- a/etc/inc/vslb.inc +++ b/etc/inc/vslb.inc @@ -341,24 +341,40 @@ Id Type Name Avlblty Status $relay_a = array(); exec('/usr/local/sbin/relayctl show relays 2>&1', $relay_a); $vs = array(); + $cur_entry = ""; for ($i = 0; isset($rdr_a[$i]); $i++) { $line = $rdr_a[$i]; if (preg_match("/^[0-9]+/", $line)) { $regs = array(); if($x = preg_match("/^[0-9]+\s+redirect\s+([^\s]+)\s+([^\s]+)/", $line, $regs)) { + $cur_entry = trim($regs[1]); $vs[trim($regs[1])] = array(); $vs[trim($regs[1])]['status'] = trim($regs[2]); } + } elseif (($x = preg_match("/^\s+total:\s(.*)\ssessions/", $line, $regs)) && !empty($cur_entry)) { + $vs[$cur_entry]['total'] = trim($regs[1]); + } elseif (($x = preg_match("/^\s+last:\s(.*)\ssessions/", $line, $regs)) && !empty($cur_entry)) { + $vs[$cur_entry]['last'] = trim($regs[1]); + } elseif (($x = preg_match("/^\s+average:(.*)\ssessions/", $line, $regs)) && !empty($cur_entry)) { + $vs[$cur_entry]['average'] = trim($regs[1]); } } + $cur_entry = ""; for ($i = 0; isset($relay_a[$i]); $i++) { $line = $relay_a[$i]; if (preg_match("/^[0-9]+/", $line)) { $regs = array(); if($x = preg_match("/^[0-9]+\s+relay\s+([^\s]+)\s+([^\s]+)/", $line, $regs)) { + $cur_entry = trim($regs[1]); $vs[trim($regs[1])] = array(); $vs[trim($regs[1])]['status'] = trim($regs[2]); } + } elseif (($x = preg_match("/^\s+total:\s(.*)\ssessions/", $line, $regs)) && !empty($cur_entry)) { + $vs[$cur_entry]['total'] = trim($regs[1]); + } elseif (($x = preg_match("/^\s+last:\s(.*)\ssessions/", $line, $regs)) && !empty($cur_entry)) { + $vs[$cur_entry]['last'] = trim($regs[1]); + } elseif (($x = preg_match("/^\s+average:(.*)\ssessions/", $line, $regs)) && !empty($cur_entry)) { + $vs[$cur_entry]['average'] = trim($regs[1]); } } return $vs; diff --git a/usr/local/www/status_lb_vs.php b/usr/local/www/status_lb_vs.php index 33ad6e3..0e3b9d8 100755 --- a/usr/local/www/status_lb_vs.php +++ b/usr/local/www/status_lb_vs.php @@ -77,8 +77,8 @@ include("head.inc"); <td width="10%" class="listhdrr"><?=gettext("Name"); ?></td> <td width="20%" class="listhdrr"><?=gettext("Address"); ?></td> <td width="10%" class="listhdrr"><?=gettext("Servers"); ?></td> - <td width="20%" class="listhdrr"><?=gettext("Status"); ?></td> - <td width="30%" class="listhdr"><?=gettext("Description"); ?></td> + <td width="25%" class="listhdrr"><?=gettext("Status"); ?></td> + <td width="25%" class="listhdr"><?=gettext("Description"); ?></td> </tr> <?php $i = 0; foreach ($a_vs as $vsent): ?> <tr> @@ -117,8 +117,18 @@ include("head.inc"); $rdr_a[$vsent['name']]['status'] = 'Unknown - relayd not running?'; } ?> - <td class="listr"> - <table border="0" cellpadding="3" cellspacing="2"><tr><td bgcolor="<?=$bgcolor?>"> <?=$rdr_a[$vsent['name']]['status']?> </td></tr></table> + <td class="listr" nowrap> + <table border="0" cellpadding="3" cellspacing="2"> + <tr><td bgcolor="<?=$bgcolor?>"><?=$rdr_a[$vsent['name']]['status']?> </td></tr> + </table> + <?php + if (!empty($rdr_a[$vsent['name']]['total'])) + echo "Total Sessions: {$rdr_a[$vsent['name']]['total']}\n"; + if (!empty($rdr_a[$vsent['name']]['last'])) + echo "<br/>Last: {$rdr_a[$vsent['name']]['last']}\n"; + if (!empty($rdr_a[$vsent['name']]['average'])) + echo "<br/>Average: {$rdr_a[$vsent['name']]['average']}\n"; + ?> </td> <td class="listbg" > <?=$vsent['descr'];?> |