#!/usr/local/bin/php "") { mwexec("killall pfctl"); Header("Location: status_queues.php"); exit; } $a_queues = array(); $pfctl_vsq = `/sbin/pfctl -vsq`; $pfctl_vsq_array = split("\n", $pfctl_vsq); $if = ""; foreach($pfctl_vsq_array as $pfctl) { if (preg_match_all("/queue\s+(\w+)\s+(\w+)\s+(\w+)\s+/",$pfctl,$match_array)) { if (stristr($match_array[1][0],"root_")) continue; $a_queues[] = $match_array[1][0] . " on " . convert_real_interface_to_friendly_descr($match_array[3][0]); } } $pgtitle = array("Status","Traffic shaper","Queues"); include("head.inc"); ?>
"; echo "
Queue Statistics
 
   " . htmlspecialchars($queue) . "";?>    "; echo ""; echo ""; echo " "; echo "
"; echo "                "; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; ?>
 

Note:
Queue graphs take 5 seconds to sample data.
You can configure the Traffic Shaper here.


Reset queues if they do not load. 1) { mwexec("/usr/bin/killall pfctl"); exit; } $stat_line_split = split("\|", $stats_line); $packet_sampled = intval($stat_line_split[2]); $speed = $stat_line_split[1]; $borrows = intval($stat_line_split[3]); $suspends = intval($stat_line_split[4]); $drops = intval($stat_line_split[5]); echo "\n"; $i++; } /* * prevent user from running out of ram. * firefox and ie can be a bear on ram usage! */ $counter++; if($counter > 100) { echo "Redirecting to Queue Status.

"; echo ""; mwexec("/usr/bin/killall pfctl"); mwexec("/usr/bin/killall pfctl"); exit; } } mwexec("/usr/bin/killall pfctl"); mwexec("/usr/bin/killall pfctl"); ?>