mcardle     2005/12/14 17:26:38 CET

  Modified files:
    esiadmin/css         screen.css 
    esiadmin             index.jsp 
  Log:
  * adds bar charts
  * adds more stats
  * support for first step in rewrite of backend cache code
  
  Revision  Changes    Path
  1.2       +17 -0     esi_server/esiadmin/css/screen.css
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/esi_server/esiadmin/css/screen.css.diff?r1=1.1&r2=1.2&f=h
  1.5       +197 -60   esi_server/esiadmin/index.jsp
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/esi_server/esiadmin/index.jsp.diff?r1=1.4&r2=1.5&f=h
  
  
  
  Index: screen.css
  ===================================================================
  RCS file: /home/cvs/repository/esi_server/esiadmin/css/screen.css,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- screen.css        5 Dec 2005 16:49:02 -0000       1.1
  +++ screen.css        14 Dec 2005 16:26:37 -0000      1.2
  @@ -324,3 +324,20 @@
   }
   
   table.simple td.textRed {color: #b11;}
  +
  +    .graph {
  +        position: relative; /* IE is dumb */
  +        width: 200px;
  +        border: 1px solid #B1D632;
  +        padding: 2px;
  +    }
  +    .graph .bar {
  +        display: block;
  +        position: relative;
  +        background: #B1D632;
  +        text-align: center;
  +        color: #333;
  +        height: 2em;
  +        line-height: 2em;
  +    }
  +    .graph .bar span { position: absolute; left: 1em; }
  
  
  
  Index: index.jsp
  ===================================================================
  RCS file: /home/cvs/repository/esi_server/esiadmin/index.jsp,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- index.jsp 6 Dec 2005 14:43:00 -0000       1.4
  +++ index.jsp 14 Dec 2005 16:26:38 -0000      1.5
  @@ -1,4 +1,4 @@
  -
  +<%@ page import="java.text.DecimalFormat"%>
   <%@ include file="inc/header.jsp" %>
   
   
  @@ -10,66 +10,203 @@
   <br>
   
   <table width="100%" border="0">
  -  <tr>
  -    <td>&nbsp;</td>
  -    <td>
  -     
  -     <br>
  -<h2>Access Statistics</h2>
  -<br>
  -<br>
  -<%
  +    <tr>
  +        <td>&nbsp;</td>
  +        <td>
  +
  +            <br>
  +            <h2>Access Statistics</h2>
  +            <br>
  +            <%
  +
  +                EsiStats stats = EsiStats.getInstance();
  +
  +                DecimalFormat percentFormat = new DecimalFormat("###.##");
  +
  +                long totalUrlCacheAccesses =  stats.getUrlCacheHits() + 
stats.getUrlCacheMisses() +1;
  +                long totalContentCacheAccesses =  
stats.getContentCacheHits() + stats.getContentCacheMisses() +1;
  +
  +                String contentEfficiencyStr = "0";
  +                if (!Double.isNaN(cacheStatus.getContentCacheEfficiency())) {
  +                        contentEfficiencyStr = 
percentFormat.format(cacheStatus.getContentCacheEfficiency());
  +                }
  +
  +                String urlEfficiencyStr = "0";
  +                if (!Double.isNaN(cacheStatus.getUrlCacheEfficiency())) {
  +                        urlEfficiencyStr = 
percentFormat.format(cacheStatus.getUrlCacheEfficiency());
  +                }
  +                //TODO: put in a html table format instead of this
  +            %>
  +            <br><br>
  +            <table width="80%"  border="0">
  +              <tr valign="middle">
  +                <th width="371" scope="row"><div align="left">url Cache 
Accesses</div></th>
  +                <td width="89"><%=totalUrlCacheAccesses%></td>
  +                <td width="110">&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">url Cache Hits</div></th>
  +                <td><%=stats.getUrlCacheHits()%> or <% long 
hitRatio=100*stats.getUrlCacheHits()/totalUrlCacheAccesses;%><%=hitRatio%>% 
</td>
  +                <td><div class="graph">
  +                             <strong class="bar" style="width: 
<%=hitRatio%>%;"><%=hitRatio%>%</strong>
  +                             </div></td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">url Cache Misses</div></th>
  +                <td><%=stats.getUrlCacheMisses()%> or 
<%=100*stats.getUrlCacheMisses()/totalUrlCacheAccesses%>%</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left"></div></th>
  +                <td>&nbsp;</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">url Cache Hits 
(CacheEntry-based info)</div></th>
  +                <td><%=cacheStatus.getUrlCacheTotalHits()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">url Cache Successful Hits 
(CacheEntry-based info)</div></th>
  +                <td><%=cacheStatus.getUrlCacheSuccessHits()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">url Cache 
Efficiency</div></th>
  +                <td><%=urlEfficiencyStr%>% </td>
  +                <td><div class="graph">
  +                             <strong class="bar" style="width: 
<%=urlEfficiencyStr%>%;"><%=urlEfficiencyStr%>%</strong>
  +                             </div></td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">url Cache Limit</div></th>
  +                <td><%=cacheStatus.getUrlCacheLimit()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left"></div></th>
  +                <td>&nbsp;</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache Accesses     
                             
  +                </div></th>
  +                <td><%=totalContentCacheAccesses%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache 
Hits</div></th>
  +                <td><%=stats.getContentCacheHits()%> or <% long chitRatio = 
100*stats.getContentCacheHits()/totalContentCacheAccesses;%><%=chitRatio%>% 
</td>
  +                <td><div class="graph">
  +                             <strong class="bar" style="width: 
<%=chitRatio%>%;"><%=chitRatio%>%</strong>
  +                             </div></td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache Misses 
</div></th>
  +                <td><%=stats.getContentCacheMisses()%> or 
<%=100*stats.getContentCacheMisses()/totalContentCacheAccesses%>% </td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left"></div></th>
  +                <td>&nbsp;</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache Hits 
(CacheEntry-based info)</div></th>
  +                <td><%=cacheStatus.getContentCacheTotalHits()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache Successful 
Hits (CacheEntry-based info)</div></th>
  +                <td><%=cacheStatus.getContentCacheSuccessHits()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache 
Efficiency</div></th>
  +                <td> <%=contentEfficiencyStr%>%</td>
  +                <td><div class="graph">
  +                             <strong class="bar" style="width: 
<%=contentEfficiencyStr%>%;"><%=contentEfficiencyStr%>%</strong>
  +                             </div></td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Cache 
Limit</div></th>
  +                <td><%=cacheStatus.getContentCacheLimit()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left"></div></th>
  +                <td>&nbsp;</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left"></div></th>
  +                <td>&nbsp;</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +            </table>
  +            <br>            
  +            <h2>Cache Details</h2>
  +            <table width="70%"  border="0">
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Url Objects stored         
         </div></th>
  +                <td><%=cacheStatus.getUrlCacheSize()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Objects 
stored</div></th>
  +                <td><%=cacheStatus.getContentCacheSize()%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Content Sharing</div></th>
  +                <td> <% long cSharing = 
100-100*cacheStatus.getContentCacheSize()/(cacheStatus.getUrlCacheSize()+1);%><%=cSharing%>%
 </td>
  +                <td><div class="graph">
  +                             <strong class="bar" style="width: 
<%=cSharing%>%;"><%=cSharing%>%</strong>
  +                             </div></td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">
  +                  <%
  +                long totalMem = cacheStatus.getTotalMemory();
  +                long freeMem = cacheStatus.getFreeMemory();
  +                long usedMem =  totalMem - freeMem;
  +            %>
  +                  Total Memory</div></th>
  +                <td><%=CacheStatus.memorySizeToString(totalMem)%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Free Memory</div></th>
  +                <td><%=CacheStatus.memorySizeToString(freeMem)%></td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left">Memory Usage</div></th>
  +                <td> <%=CacheStatus.memorySizeToString(usedMem)%> (or 
<%=100*usedMem/(totalMem+1)%>%) </td>
  +                <td>&nbsp;</td>
  +              </tr>
  +              <tr valign="middle">
  +                <th scope="row"><div align="left"></div></th>
  +                <td>&nbsp;</td>
  +                <td>&nbsp;</td>
  +              </tr>
  +            </table>            
  +            <br>
  +            <br><a href="cachestatus.jsp">Current State of Cache</a> 
  +            <br>
  +                     <br><a href="invalidateWholeCache.jsp">Clear Cache</a> 
<br>
  +            <br>
  +                     <br>
  +            <h2>Settings</h2>
  +            <br>
  +            <br>
  +            <%=SettingsBean.getInstance().toString()%>
  +            <br>
  +            <br>
  +            <br>
   
  -    EsiStats stats = EsiStats.getInstance();
  -
  -    long totalUrlCacheAccesses =  stats.getUrlCacheHits() + 
stats.getUrlCacheMisses() +1;
  -    long totalContentCacheAccesses =  stats.getContentCacheHits() + 
stats.getContentCacheMisses() +1;
  -%>
  -
  -<br>Number of total url Cache Accesses: <%=totalUrlCacheAccesses%>
  -<br>Number of total url Cache Hits: <%=stats.getUrlCacheHits()%> or 
<%=100*stats.getUrlCacheHits()/totalUrlCacheAccesses%>%
  -<br>Number of total url Cache Misses: <%=stats.getUrlCacheMisses()%> or 
<%=100*stats.getUrlCacheMisses()/totalUrlCacheAccesses%>%
  -<br>
  -<br>
  -<br>Number of total Content Cache Accesses: <%=totalContentCacheAccesses%>
  -<br>Number of total Content Cache Hits: <%=stats.getContentCacheHits()%> or 
<%=100*stats.getContentCacheHits()/totalContentCacheAccesses%>%
  -<br>Number of total Content Cache Hits: <%=stats.getContentCacheMisses()%> 
or <%=100*stats.getContentCacheMisses()/totalContentCacheAccesses%>%
  -<br>
  -<br>
  -<br>
  -<br>
  -<h2>Cache Details</h2>
  -<br>
  -<br>Number of Url Objects stored: <%=cacheStatus.getUrlCacheSize()%>
  -<br>Number of Content Objects stored: <%=cacheStatus.getContentCacheSize()%>
  -<br>=> Percentage of Content Sharing: 
<%=100-100*cacheStatus.getContentCacheSize()/(cacheStatus.getUrlCacheSize()+1)%>%
  -<br>
  -<%
  -    long totalMem = cacheStatus.getTotalMemory();
  -    long freeMem = cacheStatus.getFreeMemory();
  -    long usedMem =  totalMem - freeMem;
  -%>
  -<br>Total Memory : <%=CacheStatus.memorySizeToString(totalMem)%>
  -<br>Free Memory : <%=CacheStatus.memorySizeToString(freeMem)%>
  -<br>Memory Usage: <%=CacheStatus.memorySizeToString(usedMem)%>  (or 
<%=100*usedMem/(totalMem+1)%>%)
  -<br>
  -<br>
  -<a href="cachestatus.jsp">Current State of Cache</a>
  -<br>
  -<br>
  -<a href="invalidateWholeCache.jsp">Clear Cache</a>
  -<br>
  -<br>
  -<h2>Settings</h2>
  -<br>
  -<br>
  -<%=GeneralSettings.getInstance().toString()%>
  -<br>
  -<br>
  -<br>
  -     
  -     </td>
  -  </tr>
  +        </td>
  +    </tr>
   </table>
   
   <br>
  

Reply via email to