[rhmessaging-commits] rhmessaging commits: r1455 - in mgmt: notes and 1 other directory.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Tue Dec 11 16:04:00 EST 2007


Author: justi9
Date: 2007-12-11 16:04:00 -0500 (Tue, 11 Dec 2007)
New Revision: 1455

Modified:
   mgmt/cumin/python/cumin/__init__.py
   mgmt/cumin/python/cumin/charts.py
   mgmt/cumin/python/cumin/exchange.strings
   mgmt/cumin/python/cumin/model.py
   mgmt/cumin/python/cumin/page.strings
   mgmt/cumin/python/cumin/queue.py
   mgmt/cumin/python/cumin/queue.strings
   mgmt/cumin/python/cumin/widgets.py
   mgmt/cumin/python/cumin/widgets.strings
   mgmt/notes/justin-todo.txt
Log:
Adds pending command counts to the status boxes.  Also cleans up the
ajax for status updates.



Modified: mgmt/cumin/python/cumin/__init__.py
===================================================================
--- mgmt/cumin/python/cumin/__init__.py	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/__init__.py	2007-12-11 21:04:00 UTC (rev 1455)
@@ -1,4 +1,4 @@
-import sys, os
+import sys, os, socket
 
 from random import randint
 from wooly import Application, Session, Page
@@ -32,7 +32,7 @@
         for reg in BrokerRegistration.select():
             try:
                 self.model.data.connectToBroker(reg.host, reg.port or 5672)
-            except:
+            except socket.error:
                 print "Failed connecting to broker '%s' at %s:%i" % \
                     (reg.name, reg.host, reg.port or 5672)
 

Modified: mgmt/cumin/python/cumin/charts.py
===================================================================
--- mgmt/cumin/python/cumin/charts.py	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/charts.py	2007-12-11 21:04:00 UTC (rev 1455)
@@ -26,6 +26,10 @@
         xs = range(self.width, 0 - self.value_interval, -self.value_interval)
 
         for x, value in zip(xs, values):
+            if value is None:
+                print "Warning: unexpected null value" #XXX
+                value = 0
+
             y = self.height - (value / float(self.max_value)) * self.height
             cr.line_to(x, y)
 

Modified: mgmt/cumin/python/cumin/exchange.strings
===================================================================
--- mgmt/cumin/python/cumin/exchange.strings	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/exchange.strings	2007-12-11 21:04:00 UTC (rev 1455)
@@ -107,6 +107,8 @@
 
   <div>{status_info}</div>
 
+  <div>{actions_pending}</div>
+
   <table>
     <tr>
       <th></th>

Modified: mgmt/cumin/python/cumin/model.py
===================================================================
--- mgmt/cumin/python/cumin/model.py	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/model.py	2007-12-11 21:04:00 UTC (rev 1455)
@@ -40,10 +40,13 @@
             if stat.name == name:
                 return stat
 
-    def write_error_xml(self, object, writer):
-        writer.write("<error-count>%i</error-count>" % 0)
-        writer.write("<warning-count>%i</warning-count>" % 0)
+    def write_event_xml(self, object, writer):
+        writer.write("<events errors=\"%i\" warnings=\"%i\"/>" % (0, 0))
 
+    def write_action_xml(self, object, writer):
+        count = len(self.model.data.outstandingMethodCalls)
+        writer.write("<actions pending=\"%i\"/>" % count)
+
     def write_stat_xml(self, object, writer):
         for stat in self.stats:
             stat.write_xml(object, writer)
@@ -265,7 +268,8 @@
         writer.write("<queue id=\"%i\">" % queue.id)
         writer.write("<name>%s</name>" % queue.name)
 
-        self.write_error_xml(queue, writer)
+        self.write_event_xml(queue, writer)
+        self.write_action_xml(queue, writer)
         self.write_stat_xml(queue, writer)
             
         writer.write("</queue>")
@@ -322,7 +326,8 @@
         writer.write("<exchange id=\"%i\">" % exchange.id)
         writer.write("<name>%s</name>" % exchange.name)
 
-        self.write_error_xml(exchange, writer)
+        self.write_event_xml(exchange, writer)
+        self.write_action_xml(exchange, writer)
         self.write_stat_xml(exchange, writer)
             
         writer.write("</exchange>")

Modified: mgmt/cumin/python/cumin/page.strings
===================================================================
--- mgmt/cumin/python/cumin/page.strings	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/page.strings	2007-12-11 21:04:00 UTC (rev 1455)
@@ -588,26 +588,6 @@
     }
 }())
 
-function updateStatus(id, object) {
-    var ecount = object["error-count"];
-    var errors = ecount + " " + (ecount == "1" && "error" || "errors");
-
-    var wcount = object["warning-count"];
-    var warnings = wcount + " " + (wcount == "1" && "warning" || "warnings");
-
-    var status = wooly.doc().elembyid(id);
-
-    if (ecount != "0") {
-        status.setattr("class", "mstatus red");
-    } else if (wcount != "0") {
-        status.setattr("class", "mstatus yellow");
-    } else {
-        status.setattr("class", "mstatus green");
-    }
-
-    status.elem("div").set(errors + ", " + warnings);
-}
-
 function updateImage(id, object) {
     var img = wooly.doc().elembyid(id);
     

Modified: mgmt/cumin/python/cumin/queue.py
===================================================================
--- mgmt/cumin/python/cumin/queue.py	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/queue.py	2007-12-11 21:04:00 UTC (rev 1455)
@@ -354,6 +354,7 @@
 
 def doit(error, args):
     print error, args
+    print "did it!"
 
 class QueuePurge(CuminConfirmForm):
     def get_title(self, session, queue):
@@ -366,8 +367,10 @@
 
     def process_submit(self, session, queue):
         print "open purge"
+
+        print "queue.managedBroker", queue.managedBroker
         
-        queue.vhost.broker.echo(self.app.model.data, doit, 1, "dude!")
+        queue.purge(self.app.model.data, queue.managedBroker, doit)
 
         print "close purge"
 

Modified: mgmt/cumin/python/cumin/queue.strings
===================================================================
--- mgmt/cumin/python/cumin/queue.strings	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/queue.strings	2007-12-11 21:04:00 UTC (rev 1455)
@@ -113,6 +113,8 @@
 
   <div>{status_info}</div>
 
+  <div>{actions_pending}</div>
+
   <table>
     <tr>
       <th></th>

Modified: mgmt/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/cumin/python/cumin/widgets.py	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/widgets.py	2007-12-11 21:04:00 UTC (rev 1455)
@@ -143,6 +143,10 @@
         else:
             return "mstatus green"
 
+    def render_actions_pending(self, session, object):
+        count = len(self.app.model.data.outstandingMethodCalls)
+        return "%i action%s pending" % (count, ess(count))
+
     def render_status_info(self, session, object):
         error_count = 0 #XXX len(object.errors)
         warning_count = 0 #XXX len(object.warnings)

Modified: mgmt/cumin/python/cumin/widgets.strings
===================================================================
--- mgmt/cumin/python/cumin/widgets.strings	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/cumin/python/cumin/widgets.strings	2007-12-11 21:04:00 UTC (rev 1455)
@@ -13,11 +13,41 @@
   wooly.doc().elembyid("{id}").node.elements[1].focus();
 </script>
 
+[CuminStatus.javascript]
+function updateStatus(id, object) {
+    var ecount = object.events.errors
+    var errors = ecount + " " + (ecount == "1" && "error" || "errors");
+
+    var wcount = object.events.warnings
+    var warnings = wcount + " " + (wcount == "1" && "warning" || "warnings");
+
+    var status = wooly.doc().elembyid(id);
+
+    if (ecount != "0") {
+        status.setattr("class", "mstatus red");
+    } else if (wcount != "0") {
+        status.setattr("class", "mstatus yellow");
+    } else {
+        status.setattr("class", "mstatus green");
+    }
+
+    var divs = status.elems("div", null, null, 0, 2)
+
+    divs.next().set(errors + ", " + warnings);
+
+    var acount = object.actions.pending;
+    var actions = acount + " " + (acount == "1" && "action" || "actions") + " pending";
+
+    divs.next().set(actions);
+}
+
 [CuminStatus.html]
 <div id="{id}" class="{class}">
   <h2>Status</h2>
 
   <div>{status_info}</div>
+
+  <div>{actions_pending}</div>
 </div>
 
 [UnitSwitch.html]

Modified: mgmt/notes/justin-todo.txt
===================================================================
--- mgmt/notes/justin-todo.txt	2007-12-11 16:36:19 UTC (rev 1454)
+++ mgmt/notes/justin-todo.txt	2007-12-11 21:04:00 UTC (rev 1455)
@@ -30,12 +30,16 @@
 
  * Render stats without values as something other than 0, say a --
 
- * Connect purge messages up
-
  * Render the "" exchange as "Default"
 
  * Add javascript for the check-all behavior
 
+ * Find some way to reattach brokers that come back after being down
+
+ * Email amqp-list, Jonathan, and Lana with doc requirements for mgmt
+
+ * Paginate queue bindings in exchange view
+
 Deferred
 
  * Add queue journal stats




More information about the rhmessaging-commits mailing list