How to emit metrics from remote Storm worker to a Graphite server when using a customized IScheduler?storm with elasticsearch, cannot get Client which is always nullStorm Netty Transport via APIUnable to use remote slave node in Apache Storm clusterStorm Local Cluster works but StormSubmitter failsApache storm - Map topology with storm clusterSupervisor still has not startHow to set/override home directory for workers' JVM in StormWhether the storm supervisor works independently without zookeeper and nimbusSpout is not reading/emitting data in storm cluster modeMultiple Supervisor Not Visible on Storm UI

Change the color of a single dot in `ddot` symbol

Can I cause damage to electrical appliances by unplugging them when they are turned on?

Make a Bowl of Alphabet Soup

Circuit Analysis: Obtaining Close Loop OP - AMP Transfer function

Which was the first story featuring espers?

Does "he squandered his car on drink" sound natural?

How could a planet have erratic days?

Does the reader need to like the PoV character?

What is the highest possible scrabble score for placing a single tile

Quoting Keynes in a lecture

Which Article Helped Get Rid of Technobabble in RPGs?

How do I tell my boss that I'm quitting soon, especially given that a colleague just left this week

US tourist/student visa

What is going on with gets(stdin) on the site coderbyte?

Microchip documentation does not label CAN buss pins on micro controller pinout diagram

How to make money from a browser who sees 5 seconds into the future of any web page?

Has any country ever had 2 former presidents in jail simultaneously?

How do I fix the group tension caused by my character stealing and possibly killing without provocation?

What are some good ways to treat frozen vegetables such that they behave like fresh vegetables when stir frying them?

15% tax on $7.5k earnings. Is that right?

How can ping know if my host is down

Why does this expression simplify as such?

Multiplicative persistence

What is Cash Advance APR?



How to emit metrics from remote Storm worker to a Graphite server when using a customized IScheduler?


storm with elasticsearch, cannot get Client which is always nullStorm Netty Transport via APIUnable to use remote slave node in Apache Storm clusterStorm Local Cluster works but StormSubmitter failsApache storm - Map topology with storm clusterSupervisor still has not startHow to set/override home directory for workers' JVM in StormWhether the storm supervisor works independently without zookeeper and nimbusSpout is not reading/emitting data in storm cluster modeMultiple Supervisor Not Visible on Storm UI













0















I'm running a Storm topology and collecting metrics using Graphite through this library. When I have a cluster with a single machine and all BOLTS on this machine I can see the metrics that I want. Then I deployed a second machine (a virtual machine) which host just one Storm supervisor. I had to configure the Graphite server IP on the BOLTS to send all metrics to the master node where the Graphite server is running. Turns out that I cannot see the metrics from the BOLTS located to this second machine. The main reason is that I am using a customized Scheduler which implements IScheduler. Only when I use my scheduler I cannot generate metrics. How do I make my scheduler issue the metrics to Graphite?



public class SiteAwareScheduler implements IScheduler 
public void prepare(Map conf)
// I DON'T HAVE a topologyContext OBJECT here....
StormYammerMetricsAdapter.configure(conf, topologyContext, new MetricsRegistry());

public void schedule(Topologies topologies, Cluster cluster)




storm.yaml:



supervisor.scheduler.meta:
site: "cluster"
storm.scheduler: "org.sense.storm.scheduler.SiteAwareScheduler"


If I echo command from the remote terminal to the Graphite server I can see the metrics on the Graphite web service:



echo "test.count 3 `date +%s`" | nc -q0 192.168.56.1 2003


Here is the configuration of my topology to issue teh metrics to the Graphite server.



config.put(YammerFacadeMetric.FACADE_METRIC_TIME_BUCKET_IN_SEC, 30);
config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_HOST, "192.168.56.1");
config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_PORT, 2003);
config.put(SimpleGraphiteStormMetricProcessor.REPORT_PERIOD_IN_SEC, 10);
config.put(Config.TOPOLOGY_NAME, MqttSensorSumTopology.class.getCanonicalName());
config.registerMetricsConsumer(MetricReporter.class, new MetricReporterConfig(".*", SimpleGraphiteStormMetricProcessor.class.getCanonicalName()), 1);


I cannot see any error on the logs of the remote Storm Worker.










share|improve this question




























    0















    I'm running a Storm topology and collecting metrics using Graphite through this library. When I have a cluster with a single machine and all BOLTS on this machine I can see the metrics that I want. Then I deployed a second machine (a virtual machine) which host just one Storm supervisor. I had to configure the Graphite server IP on the BOLTS to send all metrics to the master node where the Graphite server is running. Turns out that I cannot see the metrics from the BOLTS located to this second machine. The main reason is that I am using a customized Scheduler which implements IScheduler. Only when I use my scheduler I cannot generate metrics. How do I make my scheduler issue the metrics to Graphite?



    public class SiteAwareScheduler implements IScheduler 
    public void prepare(Map conf)
    // I DON'T HAVE a topologyContext OBJECT here....
    StormYammerMetricsAdapter.configure(conf, topologyContext, new MetricsRegistry());

    public void schedule(Topologies topologies, Cluster cluster)




    storm.yaml:



    supervisor.scheduler.meta:
    site: "cluster"
    storm.scheduler: "org.sense.storm.scheduler.SiteAwareScheduler"


    If I echo command from the remote terminal to the Graphite server I can see the metrics on the Graphite web service:



    echo "test.count 3 `date +%s`" | nc -q0 192.168.56.1 2003


    Here is the configuration of my topology to issue teh metrics to the Graphite server.



    config.put(YammerFacadeMetric.FACADE_METRIC_TIME_BUCKET_IN_SEC, 30);
    config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_HOST, "192.168.56.1");
    config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_PORT, 2003);
    config.put(SimpleGraphiteStormMetricProcessor.REPORT_PERIOD_IN_SEC, 10);
    config.put(Config.TOPOLOGY_NAME, MqttSensorSumTopology.class.getCanonicalName());
    config.registerMetricsConsumer(MetricReporter.class, new MetricReporterConfig(".*", SimpleGraphiteStormMetricProcessor.class.getCanonicalName()), 1);


    I cannot see any error on the logs of the remote Storm Worker.










    share|improve this question


























      0












      0








      0








      I'm running a Storm topology and collecting metrics using Graphite through this library. When I have a cluster with a single machine and all BOLTS on this machine I can see the metrics that I want. Then I deployed a second machine (a virtual machine) which host just one Storm supervisor. I had to configure the Graphite server IP on the BOLTS to send all metrics to the master node where the Graphite server is running. Turns out that I cannot see the metrics from the BOLTS located to this second machine. The main reason is that I am using a customized Scheduler which implements IScheduler. Only when I use my scheduler I cannot generate metrics. How do I make my scheduler issue the metrics to Graphite?



      public class SiteAwareScheduler implements IScheduler 
      public void prepare(Map conf)
      // I DON'T HAVE a topologyContext OBJECT here....
      StormYammerMetricsAdapter.configure(conf, topologyContext, new MetricsRegistry());

      public void schedule(Topologies topologies, Cluster cluster)




      storm.yaml:



      supervisor.scheduler.meta:
      site: "cluster"
      storm.scheduler: "org.sense.storm.scheduler.SiteAwareScheduler"


      If I echo command from the remote terminal to the Graphite server I can see the metrics on the Graphite web service:



      echo "test.count 3 `date +%s`" | nc -q0 192.168.56.1 2003


      Here is the configuration of my topology to issue teh metrics to the Graphite server.



      config.put(YammerFacadeMetric.FACADE_METRIC_TIME_BUCKET_IN_SEC, 30);
      config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_HOST, "192.168.56.1");
      config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_PORT, 2003);
      config.put(SimpleGraphiteStormMetricProcessor.REPORT_PERIOD_IN_SEC, 10);
      config.put(Config.TOPOLOGY_NAME, MqttSensorSumTopology.class.getCanonicalName());
      config.registerMetricsConsumer(MetricReporter.class, new MetricReporterConfig(".*", SimpleGraphiteStormMetricProcessor.class.getCanonicalName()), 1);


      I cannot see any error on the logs of the remote Storm Worker.










      share|improve this question
















      I'm running a Storm topology and collecting metrics using Graphite through this library. When I have a cluster with a single machine and all BOLTS on this machine I can see the metrics that I want. Then I deployed a second machine (a virtual machine) which host just one Storm supervisor. I had to configure the Graphite server IP on the BOLTS to send all metrics to the master node where the Graphite server is running. Turns out that I cannot see the metrics from the BOLTS located to this second machine. The main reason is that I am using a customized Scheduler which implements IScheduler. Only when I use my scheduler I cannot generate metrics. How do I make my scheduler issue the metrics to Graphite?



      public class SiteAwareScheduler implements IScheduler 
      public void prepare(Map conf)
      // I DON'T HAVE a topologyContext OBJECT here....
      StormYammerMetricsAdapter.configure(conf, topologyContext, new MetricsRegistry());

      public void schedule(Topologies topologies, Cluster cluster)




      storm.yaml:



      supervisor.scheduler.meta:
      site: "cluster"
      storm.scheduler: "org.sense.storm.scheduler.SiteAwareScheduler"


      If I echo command from the remote terminal to the Graphite server I can see the metrics on the Graphite web service:



      echo "test.count 3 `date +%s`" | nc -q0 192.168.56.1 2003


      Here is the configuration of my topology to issue teh metrics to the Graphite server.



      config.put(YammerFacadeMetric.FACADE_METRIC_TIME_BUCKET_IN_SEC, 30);
      config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_HOST, "192.168.56.1");
      config.put(SimpleGraphiteStormMetricProcessor.GRAPHITE_PORT, 2003);
      config.put(SimpleGraphiteStormMetricProcessor.REPORT_PERIOD_IN_SEC, 10);
      config.put(Config.TOPOLOGY_NAME, MqttSensorSumTopology.class.getCanonicalName());
      config.registerMetricsConsumer(MetricReporter.class, new MetricReporterConfig(".*", SimpleGraphiteStormMetricProcessor.class.getCanonicalName()), 1);


      I cannot see any error on the logs of the remote Storm Worker.







      apache-storm scheduling graphite graphite-carbon






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited 13 hours ago







      Felipe

















      asked 15 hours ago









      FelipeFelipe

      1,02821331




      1,02821331






















          0






          active

          oldest

          votes











          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55277879%2fhow-to-emit-metrics-from-remote-storm-worker-to-a-graphite-server-when-using-a-c%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid …


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55277879%2fhow-to-emit-metrics-from-remote-storm-worker-to-a-graphite-server-when-using-a-c%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          How to preserve electronics (computers, tablets and phones) for hundreds of years Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) The network's official Twitter account is up and running again. What content…How might modern humans leave a message for 50,000 years?How would an aquatic race develop computers?How do we make computers care for human life?Keeping supplies for 1000 yearsWhat will cell phones become in 100 years?What body armor protects against a laser?Could a society attain 1800s technology if limited to using copper and bronze?Electricity power (magic) and electronicsScavenging metal resources in post-apocalypse after 100 yearsWhy would precursors create devices that can survive and still work after hundreds of years?

          155 수학 과학 기타 둘러보기 메뉴eh추가해eh문서를 완성해

          Convert JSON to MapSimplest way to convert a string representing JSON array into Java array List of key value pairsHow to take String JSON values into HashMapConvert a JSON String to a HashMapCreating BSON object from JSON stringJSONObject - How to get a value ?Better Map ConstructorReading JSON from Url javaUpdate columns if input values are not null otherwise ignore and keep the existing values of column in databaseHow to store object represented as Json string into Couchbase Lite?Go JSON into MapHow do I efficiently iterate over each entry in a Java Map?Sort a Map<Key, Value> by valuesHow to round a number to n decimal places in JavaCan comments be used in JSON?How do I read / convert an InputStream into a String in Java?How can I pretty-print JSON in a shell script?What is the correct JSON content type?How can I deserialize JSON to a simple Dictionary<string,string> in ASP.NET?Why does Google prepend while(1); to their JSON responses?Parse JSON in JavaScript?