paulwong

          Auto rebalance Storm

          http://stackoverflow.com/questions/15010420/storm-topology-rebalance-using-java-code


          使用Nimbus獲取STORM的信息
          http://www.andys-sundaypink.com/i/retrieve-storm-cluster-statistic-from-nimbus-java-mode/
          TSocket tsocket = new TSocket("localhost", 6627);
          TFramedTransport tTransport = new TFramedTransport(tsocket);
          TBinaryProtocol tBinaryProtocol = new TBinaryProtocol(tTransport);
          Nimbus.Client client = new Nimbus.Client(tBinaryProtocol);
          String topologyId = "test-1-234232567";


          try {

          tTransport.open();
          ClusterSummary clusterSummary = client.getClusterInfo();
          StormTopology stormTopology = client.getTopology(topologyId);
          TopologyInfo topologyInfo = client.getTopologyInfo(topologyId);
          List<ExecutorSummary> executorSummaries = topologyInfo.get_executors();

          List<TopologySummary> topologies = clusterSummary.get_topologies();
          for(ExecutorSummary executorSummary : executorSummaries){

          String id = executorSummary.get_component_id();
          ExecutorInfo executorInfo = executorSummary.get_executor_info();
          ExecutorStats executorStats = executorSummary.get_stats();
          System.out.println("executorSummary :: " + id + " emit size :: " + executorStats.get_emitted_size());
          }
          catch (TTransportException e) {
          e.printStackTrace();
          catch (TException e) {
          e.printStackTrace();
          catch (NotAliveException e) {
          e.printStackTrace();
          }




          posted on 2014-05-09 23:48 paulwong 閱讀(532) 評論(0)  編輯  收藏 所屬分類: STORM

          主站蜘蛛池模板: 额尔古纳市| 安丘市| 井冈山市| 观塘区| 从化市| 清丰县| 湟中县| 花垣县| 个旧市| 会同县| 元阳县| 朝阳区| 霸州市| 上杭县| 祁阳县| 天全县| 广安市| 崇信县| 延川县| 贵州省| 株洲市| 滁州市| 新泰市| 方正县| 囊谦县| 河源市| 安远县| 延安市| 霞浦县| 鲁甸县| 宁德市| 申扎县| 全椒县| 浦县| 兴安盟| 长沙市| 乐都县| 高尔夫| 南丰县| 石城县| 东明县|