You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ch...@apache.org on 2012/08/09 19:20:37 UTC
svn commit: r1371323 - in /activemq/activemq-apollo/trunk:
apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/
apollo-dto/src/main/java/org/apache/activemq/apollo/dto/
apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/ apol...
Author: chirino
Date: Thu Aug 9 17:20:36 2012
New Revision: 1371323
URL: http://svn.apache.org/viewvc?rev=1371323&view=rev
Log:
Fixes APLO-179 : Remove the list of connections from the toplevel REST URI
You can now toggle if the list of connections at the broker level and the connector level.
Modified:
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala
activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/BrokerStatusDTO.java
activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/ConnectorStatusDTO.java
activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/BrokerResource.scala
activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/BrokerStatusDTO.jade
activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/ConnectorStatusDTO.jade
activemq/activemq-apollo/trunk/apollo-website/src/documentation/management-api.md
Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Connector.scala Thu Aug 9 17:20:36 2012
@@ -129,6 +129,10 @@ class AcceptingConnector(val broker:Brok
result.connected = connected.get
result.protocol = Option(config.protocol).getOrElse("any")
result.local_address = Option(socket_address).map(_.toString).getOrElse("any")
+
+ for( (id, connection) <- broker.connections if connection.connector eq this ) {
+ result.connections.add( new LongIdLabeledDTO(id, connection.transport.getRemoteAddress.toString ) )
+ }
result
}
Modified: activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/BrokerStatusDTO.java
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/BrokerStatusDTO.java?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/BrokerStatusDTO.java (original)
+++ activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/BrokerStatusDTO.java Thu Aug 9 17:20:36 2012
@@ -64,14 +64,20 @@ public class BrokerStatusDTO extends Ser
public List<String> connectors = new ArrayList<String>();
/**
- * Ids of all the connections running on the broker
+ * The total number of connections accepted by the broker since it started.
*/
- @XmlElement(name="connection")
- public List<LongIdLabeledDTO> connections = new ArrayList<LongIdLabeledDTO>();
+ @XmlAttribute(name="connection_counter")
+ public long connection_counter;
/**
- * The total number of connections accepted by the broker.
+ * The number of connections that this connector has currently connected.
*/
- @XmlAttribute(name="connection_counter")
- public long connection_counter;
+ @XmlAttribute
+ public long connected;
+
+ /**
+ * The connections that have been created via the connector.
+ */
+ @XmlElement(name="connection")
+ public List<LongIdLabeledDTO> connections = new ArrayList<LongIdLabeledDTO>();
}
Modified: activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/ConnectorStatusDTO.java
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/ConnectorStatusDTO.java?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/ConnectorStatusDTO.java (original)
+++ activemq/activemq-apollo/trunk/apollo-dto/src/main/java/org/apache/activemq/apollo/dto/ConnectorStatusDTO.java Thu Aug 9 17:20:36 2012
@@ -56,4 +56,10 @@ public class ConnectorStatusDTO extends
@XmlAttribute
public long connected;
+ /**
+ * The connections that have been created via the connector.
+ */
+ @XmlElement(name="connection")
+ public List<LongIdLabeledDTO> connections = new ArrayList<LongIdLabeledDTO>();
+
}
Modified: activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/BrokerResource.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/BrokerResource.scala?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/BrokerResource.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/BrokerResource.scala Thu Aug 9 17:20:36 2012
@@ -105,7 +105,7 @@ class BrokerResource() extends Resource
@GET
@ApiOperation(value = "Returns a BrokerStatusDTO which contains summary information about the broker and the JVM")
- def get_broker():BrokerStatusDTO = {
+ def get_broker(@QueryParam("connections") connections:Boolean):BrokerStatusDTO = {
with_broker { broker =>
monitoring(broker) {
val result = new BrokerStatusDTO
@@ -117,21 +117,23 @@ class BrokerResource() extends Resource
result.state_since = broker.service_state.since
result.version = Broker.version
result.connection_counter = broker.connection_id_counter.get()
+ result.connected = broker.connections.size
broker.virtual_hosts.values.foreach{ host=>
- // TODO: may need to sync /w virtual host's dispatch queue
result.virtual_hosts.add( host.id )
}
-
broker.connectors.values.foreach{ c=>
result.connectors.add( c.id )
}
- broker.connections.foreach { case (id,connection) =>
- // TODO: may need to sync /w connection's dispatch queue
- result.connections.add( new LongIdLabeledDTO(id, connection.transport.getRemoteAddress.toString ) )
+ // only include the connection list if it was requested.
+ if( !connections ) {
+ result.connections = null;
+ } else {
+ broker.connections.foreach { case (id,connection) =>
+ result.connections.add( new LongIdLabeledDTO(id, connection.transport.getRemoteAddress.toString ) )
+ }
}
result
-
}
}
}
@@ -685,10 +687,20 @@ class BrokerResource() extends Resource
@GET @Path("/connectors/{id}")
@ApiOperation(value = "Gets the status of the specified connector.")
- def connector(@PathParam("id") id : String):ServiceStatusDTO = {
+ def connector(@PathParam("id") id : String, @QueryParam("connections") connections:Boolean):ServiceStatusDTO = {
with_connector(id) { connector =>
monitoring(connector.broker) {
- connector.status
+ val rc = connector.status
+
+ // only include the connection list if it was requested.
+ rc match {
+ case rc:ConnectorStatusDTO=>
+ if( !connections ) {
+ rc.connections = null
+ }
+ case _ =>
+ }
+ rc
}
}
}
Modified: activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/BrokerStatusDTO.jade
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/BrokerStatusDTO.jade?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/BrokerStatusDTO.jade (original)
+++ activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/BrokerStatusDTO.jade Thu Aug 9 17:20:36 2012
@@ -32,17 +32,24 @@ ul
a(href={ path("virtual-hosts/"+x+".html") }) #{x}
h2 Connectors
+
ul
- for( x <- connectors )
li
a(href={ path("connectors/"+x+".html") }) #{x}
h2 Connections
-p total connections ever : #{connection_counter}
-ul
- - for( x <- connections )
- li
- a(href={ path("connections/"+x.id+".html") }) #{x.label}
+p total connections since startup : #{connection_counter}
+p currently connected : #{connected}
+p
+ - if( connections==null )
+ a(href={ "broker.html?connections=true" }) Show Connections
+ - else
+ a(href={ "broker.html" }) Hide Connections
+ ul
+ - for( x <- connections )
+ li
+ a(href={ path("connections/"+x.id+".html") }) #{x.label}
h2 Operating System
p Name : #{jvm_metrics.os_name}
Modified: activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/ConnectorStatusDTO.jade
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/ConnectorStatusDTO.jade?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/ConnectorStatusDTO.jade (original)
+++ activemq/activemq-apollo/trunk/apollo-web/src/main/webapp/WEB-INF/org/apache/activemq/apollo/dto/ConnectorStatusDTO.jade Thu Aug 9 17:20:36 2012
@@ -32,7 +32,16 @@ p state: #{state} #{ uptime(state_since)
p local address: #{local_address}
p protocol: #{protocol}
-p currently connected: #{connected}
-p total ever connected: #{connection_counter}
-
+h2 Connections
+p total connections since startup : #{connection_counter}
+p currently connected : #{connected}
+p
+ - if( connections==null )
+ a(href={ id+".html?connections=true" }) Show Connections
+ - else
+ a(href={ id+".html" }) Hide Connections
+ ul
+ - for( x <- connections )
+ li
+ a(href={ path("../../connections/"+x.id+".html") }) #{x.label}
Modified: activemq/activemq-apollo/trunk/apollo-website/src/documentation/management-api.md
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-website/src/documentation/management-api.md?rev=1371323&r1=1371322&r2=1371323&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-website/src/documentation/management-api.md (original)
+++ activemq/activemq-apollo/trunk/apollo-website/src/documentation/management-api.md Thu Aug 9 17:20:36 2012
@@ -297,11 +297,13 @@ parameter to define the order in which t
"current_time": 1314573388707,
"virtual_hosts": ["default"],
"connectors": ["tls", "tcp"],
- "connections": [],
"connection_counter": 0
}
{pygmentize}
+ You can the `?connections=true` query parameter to have a list of connections
+ included n the result.
+
- route("GET", "/broker/queue-metrics.json", 200, "AggregateDestMetricsDTO")
:markdown
Aggregates the messaging metrics for all the queue destinations. Example:
@@ -656,6 +658,9 @@ parameter to define the order in which t
"connected": 12
}
{pygmentize}
+
+ You can the `?connections=true` query parameter to have a list of connections
+ included n the result.
- route("POST", "/broker/connectors/{connector}/action/stop.json", 303)
:markdown