diff options
author | jim-p <jimp@pfsense.org> | 2011-09-29 15:13:30 -0400 |
---|---|---|
committer | jim-p <jimp@pfsense.org> | 2011-09-29 15:13:30 -0400 |
commit | ff160984b248b91357c45747a40feee056c09d69 (patch) | |
tree | 57fbd7154fd4e9587972edca898b5bc19d8023a6 /etc/inc/vslb.inc | |
parent | 531070641d91a40d826da26bfb5c1f47c82e912f (diff) | |
download | pfsense-ff160984b248b91357c45747a40feee056c09d69.zip pfsense-ff160984b248b91357c45747a40feee056c09d69.tar.gz |
Show session detail in Virtual Server status
Diffstat (limited to 'etc/inc/vslb.inc')
-rw-r--r-- | etc/inc/vslb.inc | 16 |
1 files changed, 16 insertions, 0 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; |