This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new cbdaab1  Add v2 support for broker stats in the admin client. (#1469)
cbdaab1 is described below

commit cbdaab1f7d7232207566eedf9e99f2c9f5681f28
Author: cckellogg <cckell...@gmail.com>
AuthorDate: Thu Mar 29 12:42:34 2018 -0700

    Add v2 support for broker stats in the admin client. (#1469)
---
 .../stats/client/PulsarBrokerStatsClientTest.java  |  2 +-
 .../client/admin/internal/BrokerStatsImpl.java     | 24 ++++++++++++----------
 2 files changed, 14 insertions(+), 12 deletions(-)

diff --git 
a/pulsar-broker/src/test/java/org/apache/pulsar/stats/client/PulsarBrokerStatsClientTest.java
 
b/pulsar-broker/src/test/java/org/apache/pulsar/stats/client/PulsarBrokerStatsClientTest.java
index a8a2e52..bd4d9e9 100644
--- 
a/pulsar-broker/src/test/java/org/apache/pulsar/stats/client/PulsarBrokerStatsClientTest.java
+++ 
b/pulsar-broker/src/test/java/org/apache/pulsar/stats/client/PulsarBrokerStatsClientTest.java
@@ -81,7 +81,7 @@ public class PulsarBrokerStatsClientTest extends 
ProducerConsumerBase {
             // Ok
         }
         try {
-            client.getBrokerResourceAvailability("prop", "cluster", "ns");
+            client.getBrokerResourceAvailability("prop/cluster/ns");
         } catch (PulsarAdminException e) {
             // Ok
         }
diff --git 
a/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/internal/BrokerStatsImpl.java
 
b/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/internal/BrokerStatsImpl.java
index 6dbe20e..86c0317 100644
--- 
a/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/internal/BrokerStatsImpl.java
+++ 
b/pulsar-client-admin/src/main/java/org/apache/pulsar/client/admin/internal/BrokerStatsImpl.java
@@ -23,6 +23,7 @@ import javax.ws.rs.client.WebTarget;
 import org.apache.pulsar.client.admin.BrokerStats;
 import org.apache.pulsar.client.admin.PulsarAdminException;
 import org.apache.pulsar.client.api.Authentication;
+import org.apache.pulsar.common.naming.NamespaceName;
 import org.apache.pulsar.common.stats.AllocatorStats;
 import org.apache.pulsar.policies.data.loadbalancer.LoadManagerReport;
 import org.apache.pulsar.policies.data.loadbalancer.LocalBrokerData;
@@ -39,16 +40,18 @@ import com.google.gson.JsonObject;
 public class BrokerStatsImpl extends BaseResource implements BrokerStats {
 
     private final WebTarget adminBrokerStats;
+    private final WebTarget adminV2BrokerStats;
 
     public BrokerStatsImpl(WebTarget target, Authentication auth) {
         super(auth);
         adminBrokerStats = target.path("/admin/broker-stats");
+        adminV2BrokerStats = target.path("/admin/v2/broker-stats");
     }
     
     @Override
     public JsonArray getMetrics() throws PulsarAdminException {
         try {
-            String json = 
request(adminBrokerStats.path("/metrics")).get(String.class);
+            String json = 
request(adminV2BrokerStats.path("/metrics")).get(String.class);
             return new Gson().fromJson(json, JsonArray.class);
         } catch (Exception e) {
             throw getApiException(e);
@@ -58,7 +61,7 @@ public class BrokerStatsImpl extends BaseResource implements 
BrokerStats {
     @Override
     public AllocatorStats getAllocatorStats(String allocatorName) throws 
PulsarAdminException {
         try {
-            return 
request(adminBrokerStats.path("/allocator-stats").path(allocatorName)).get(AllocatorStats.class);
+            return 
request(adminV2BrokerStats.path("/allocator-stats").path(allocatorName)).get(AllocatorStats.class);
         } catch (Exception e) {
             throw getApiException(e);
         }
@@ -67,7 +70,7 @@ public class BrokerStatsImpl extends BaseResource implements 
BrokerStats {
     @Override
     public JsonArray getMBeans() throws PulsarAdminException {
         try {
-            String json = 
request(adminBrokerStats.path("/mbeans")).get(String.class);
+            String json = 
request(adminV2BrokerStats.path("/mbeans")).get(String.class);
             return new Gson().fromJson(json, JsonArray.class);
         } catch (Exception e) {
             throw getApiException(e);
@@ -77,7 +80,7 @@ public class BrokerStatsImpl extends BaseResource implements 
BrokerStats {
     @Override
     public JsonObject getTopics() throws PulsarAdminException {
         try {
-            String json = 
request(adminBrokerStats.path("/destinations")).get(String.class);
+            String json = 
request(adminV2BrokerStats.path("/destinations")).get(String.class);
             return new Gson().fromJson(json, JsonObject.class);
         } catch (Exception e) {
             throw getApiException(e);
@@ -87,7 +90,7 @@ public class BrokerStatsImpl extends BaseResource implements 
BrokerStats {
     @Override
     public LoadManagerReport getLoadReport() throws PulsarAdminException {
         try {
-            return 
request(adminBrokerStats.path("/load-report")).get(LocalBrokerData.class);
+            return 
request(adminV2BrokerStats.path("/load-report")).get(LocalBrokerData.class);
         } catch (Exception e) {
             throw getApiException(e);
         }
@@ -96,19 +99,18 @@ public class BrokerStatsImpl extends BaseResource 
implements BrokerStats {
     @Override
     public JsonObject getPendingBookieOpsStats() throws PulsarAdminException {
         try {
-            String json = 
request(adminBrokerStats.path("/bookieops")).get(String.class);
+            String json = 
request(adminV2BrokerStats.path("/bookieops")).get(String.class);
             return new Gson().fromJson(json, JsonObject.class);
         } catch (Exception e) {
             throw getApiException(e);
         }
     }
 
-    public JsonObject getBrokerResourceAvailability(String property, String 
cluster, String namespace)
-            throws PulsarAdminException {
+    public JsonObject getBrokerResourceAvailability(String namespace) throws 
PulsarAdminException {
         try {
-            String json = request(
-                    
adminBrokerStats.path("/broker-resource-availability").path(property).path(cluster).path(namespace))
-                            .get(String.class);
+            NamespaceName ns = NamespaceName.get(namespace);
+            WebTarget admin = ns.isV2() ? adminV2BrokerStats : 
adminBrokerStats;
+            String json = 
request(admin.path("/broker-resource-availability").path(ns.toString())).get(String.class);
             return new Gson().fromJson(json, JsonObject.class);
         } catch (Exception e) {
             throw getApiException(e);

-- 
To stop receiving notification emails like this one, please contact
mme...@apache.org.

Reply via email to