[ 
https://issues.apache.org/jira/browse/STORM-2164?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15644883#comment-15644883
 ] 

P. Taylor Goetz commented on STORM-2164:
----------------------------------------

[~abellina]

Can you share your basic design idea for this? I'm going to pick up the task 
for exposing default worker metrics via the Coda Hale API.

For the metrics reporters, I was considering adding wrappers around the 
existing reporters that would make it easier to configure reporters via Yaml 
configuration in {{storm.yaml}}. My reasoning for the wrappers is to provider a 
bridge to the fluent-style API the reporters currently use for configuration. 
So the config might look something like this in {{storm.yaml}}:

{code}
storm.metrics.reporters:
  reporter.class: "org.apache.storm.metrics2.GraphiteReporter"
  config:
    report.interval.seconds: 60
    graphite.host: "localhost"
    graphite.port: 2003
    # more graphite reporter specific config...
  reporter.class: "org.apache.storm.metrics2.ConsoleReporter"
  config:
    report.interval.seconds: 60
{code}

Then each reporter implementation would have a no-args constructor and 
{{prepare(Map<String, Object> config)}} method that would receive the above 
"config" map.

Does that align with what you are thinking?

Would you be interested in doing this work in a feature branch to make 
collaboration easier?


> Create simple generic plugin system to register codahale reporters
> ------------------------------------------------------------------
>
>                 Key: STORM-2164
>                 URL: https://issues.apache.org/jira/browse/STORM-2164
>             Project: Apache Storm
>          Issue Type: Improvement
>            Reporter: Alessandro Bellina
>            Assignee: Alessandro Bellina
>
> Configurable plugin interface s.t. daemons can instantiate codahale reporters.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to