[tor-commits] [metrics-web/master] Add bridge pool assignments to metrics website.

karsten at torproject.org karsten at torproject.org
Mon Mar 14 11:26:14 UTC 2011


commit 117a75e2ccc2f4a7215619367a8ab154e47788d1
Author: Karsten Loesing <karsten.loesing at gmx.net>
Date:   Mon Mar 14 12:25:48 2011 +0100

    Add bridge pool assignments to metrics website.
---
 .../torproject/ernie/web/ResearchDataServlet.java  |   19 +++++++++++++++++
 web/WEB-INF/data.jsp                               |   22 ++++++++++++++++++++
 web/WEB-INF/index.jsp                              |   15 +++++--------
 3 files changed, 47 insertions(+), 9 deletions(-)

diff --git a/src/org/torproject/ernie/web/ResearchDataServlet.java b/src/org/torproject/ernie/web/ResearchDataServlet.java
index 2d45c0f..ca6bf7b 100644
--- a/src/org/torproject/ernie/web/ResearchDataServlet.java
+++ b/src/org/torproject/ernie/web/ResearchDataServlet.java
@@ -75,6 +75,8 @@ public class ResearchDataServlet extends HttpServlet {
     SortedMap<String, Map<String, String[]>> torperfData =
         new TreeMap<String, Map<String, String[]>>();
     SortedMap<Date, String[]> exitLists = new TreeMap<Date, String[]>();
+    SortedMap<Date, String[]> bridgePoolAssignments =
+        new TreeMap<Date, String[]>();
 
     /* Prepare rewriting Torperf sources. */
     Map<String, String> torperfSources = new HashMap<String, String>();
@@ -207,6 +209,22 @@ public class ResearchDataServlet extends HttpServlet {
           exitLists.put(month, new String[2]);
         }
         exitLists.get(month)[0] = url;
+
+      /* URL contains bridge pool assignments. */
+      } else if (filename.startsWith("bridge-pool-assignments-20")) {
+        String yearMonth = filename.substring(filename.indexOf("20"));
+        yearMonth = yearMonth.substring(0, 7);
+        Date month = null;
+        try {
+          month = monthFormat.parse(yearMonth);
+        } catch (ParseException e) {
+          /* Ignore this URL. */
+          continue;
+        }
+        if (!bridgePoolAssignments.containsKey(month)) {
+          bridgePoolAssignments.put(month, new String[2]);
+        }
+        bridgePoolAssignments.get(month)[0] = url;
       }
     }
 
@@ -217,6 +235,7 @@ public class ResearchDataServlet extends HttpServlet {
     request.setAttribute("relayStatistics", relayStatistics);
     request.setAttribute("torperfData", torperfData);
     request.setAttribute("exitLists", exitLists);
+    request.setAttribute("bridgePoolAssignments", bridgePoolAssignments);
     request.getRequestDispatcher("WEB-INF/data.jsp").forward(request,
         response);
   }
diff --git a/web/WEB-INF/data.jsp b/web/WEB-INF/data.jsp
index 86028c2..30d42f6 100644
--- a/web/WEB-INF/data.jsp
+++ b/web/WEB-INF/data.jsp
@@ -1,5 +1,6 @@
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
+<fmt:setLocale value="en_US"/>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 <html>
 <head>
@@ -26,6 +27,7 @@
         <ul>
           <li><a href="#relaydesc">Relay descriptor archives</a></li>
           <li><a href="#bridgedesc">Bridge descriptor archives</a></li>
+          <li><a href="#bridgeassignments">Bridge pool assignments</a></li>
           <li><a href="#stats">Statistics produced by relays</a></li>
           <li><a href="#performance">Performance data</a></li>
           <li><a href="#exitlist">Exit lists</a></li>
@@ -124,6 +126,26 @@
         </table>
         <p></p>
         <br>
+        <a name="bridgeassignments"></a>
+        <h3>Bridge pool assignments</h3>
+        <br>
+        <p>BridgeDB periodically dumps the list of running bridges with
+        information about the rings, subrings, and file buckets to which
+        they are assigned to a local file.  We are archiving sanitized
+        versions of these files here to analyze how the pool assignment
+        affects a bridge's usage.</p>
+        <table width="100%" border="0" cellpadding="5" cellspacing="0" summary="">
+          <c:forEach var="item" items="${bridgePoolAssignments}" >
+            <fmt:formatDate var="longDate" pattern="MMMM yyyy"
+                            value="${item.key}"/>
+            <tr>
+              <td>
+                <a href="${item.value[0]}">${longDate}</a>
+              </td>
+            </tr>
+          </c:forEach>
+        </table>
+        <br>
         <a name="stats"></a>
         <h3>Statistics produced by relays</h3>
         <br>
diff --git a/web/WEB-INF/index.jsp b/web/WEB-INF/index.jsp
index f82a7b3..0da160b 100644
--- a/web/WEB-INF/index.jsp
+++ b/web/WEB-INF/index.jsp
@@ -32,6 +32,11 @@
         <br>
         <h3>News</h3>
         <ul>
+          <li>March 14, 2011:
+          <a href="data.html#bridgeassignments">Sanitized bridge pool
+          assignments</a> containing lists of running bridges with
+          information about the rings, subrings, and file buckets to which
+          they are assigned are now available.</li>
           <li>January 27, 2011: New <a href="performance.html">Torperf</a>
           graphs combining the download times of all sources and showing
           the fraction of timeouts and failures are now available.</li>
@@ -45,15 +50,7 @@
           <li>November 30, 2010: Tech report on
           <a href="papers/countingusers-2010-11-30.pdf">Privacy-preserving
           Ways to Estimate the Number of Tor Users</a> is available for
-          download on the <a href="papers.html">Papers</a> page.
-          <li>October 7, 2010: Custom graphs are now available for all
-          <a href="graphs.html">graphs</a>. Based on work by Kevin
-          Berry.</li>
-          <li>September 9, 2010: Custom
-          graphs on network size, relay platforms, versions, and
-          observed bandwidth available. Implemented by Kevin Berry.</li>
-          <li>September 2, 2010: New <a href="relay-search.html">relay
-          search</a> feature available.</li>
+          download on the <a href="papers.html">Papers</a> page.</li>
         </ul>
     </div>
   </div>



More information about the tor-commits mailing list