Not pretty, but should help you make some sense out of these numbers!

<table border=1>
<%
set talloc 0
set trequest 0
set tused 0
set tlocks 0
set twaits 0
set tfree 0
set tops 0
foreach p [lsort [ns_info pools]] {
       ns_adp_puts "<tr><tr><td colspan=9 align=center>[lindex $p
0]</td></tr><tr>"
       foreach e {blocksize nfree nget nput bytesreq bytesused overhead
locks lockwaits} {
               ns_adp_puts <th>$e</th>
       }
       foreach b [lrange $p 1 end] {
               set bs [lindex $b 0]
               set nf [lindex $b 1]
               set ng [lindex $b 2]
               set np [lindex $b 3]
               set nr [lindex $b 4]
               incr tops [expr $ng + $np]
               incr tlocks [lindex $b 5]
               incr twaits [lindex $b 6]
               incr tfree [expr $bs * $nf]
               set nu [expr $ng - $np]
               set na [expr $nu * $bs]
               incr talloc $na
               incr trequest $nr
               incr tused $nu
               if {$nr != 0} {
                       set ov [expr $na - $nr]
                       set op [format %4.2f%% [expr $ov.0 * 100 / $nr.0]]
               } else {
                       set ov "NA"
                       set op "NA"
               }
               ns_adp_puts </tr><tr>
               foreach e [linsert [lreplace $b 4 4] 4 $nr $na $op] {
                       ns_adp_puts <td>$e</td>
               }
               ns_adp_puts </tr>
       }
}
set ov [expr $talloc - $trequest]
set op [format %4.2f [expr $ov.0 * 100 / $trequest.0]]
if {$tlocks > 0} {
       set wr [format %4.2f [expr $twaits.0 / $tlocks.0]]
} else {
       set wr NA
}
set av [format %4.2f [expr 100.0 - ($tlocks.0 * 100) / $tops.0]]
%>
</table>
<table>
<tr><td>Total bytes requested:</td><td><%=$trequest%></td></tr>
<tr><td>Total bytes free:</td><td><%=$tfree%></td></tr>
<tr><td>Total bytes allocated:</td><td><%=$talloc%></td></tr>
<tr><td>Total bytes wasted:</td><td><%=$ov%></td></tr>
<tr><td>Total byte overhead:</td><td><%=$op%>%</td></tr>
<tr><td>Total mutex locks:</td><td><%=$tlocks%></td></tr>
<tr><td>Total mutex lock waits:</td><td><%=$twaits%></td></tr>
<tr><td>Lock wait ratio:</td><td><%=$wr%>%</td></tr>
<tr><td>Total get/puts:</td><td><%=$tops%></td></tr>
<tr><td>Lock avoidance:</td><td><%=$av%>%</td></tr>
</table>


-- AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of 
your email blank.

Reply via email to