[ 
https://issues.apache.org/jira/browse/STORM-254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rick Kellogg updated STORM-254:
-------------------------------
    Component/s: storm-core

> one Spout/Bolt can register metric twice with same name
> -------------------------------------------------------
>
>                 Key: STORM-254
>                 URL: https://issues.apache.org/jira/browse/STORM-254
>             Project: Apache Storm
>          Issue Type: Bug
>          Components: storm-core
>    Affects Versions: 0.9.2-incubating
>            Reporter: DashengJu
>            Assignee: DashengJu
>             Fix For: 0.9.3
>
>   Original Estimate: 12h
>  Remaining Estimate: 12h
>
> In a Bolt's prepare method, we can register metrics twice with the same name, 
> using different timeBucketSizeInSecs parameter, like this:
>     public void prepare(Map stormConf, TopologyContext context) {
>       mapper = new ObjectMapper();
>       
>       cMetric = new MTCountMetric();
>       context.registerMetric("JavaBoltCount", cMetric, 120);
>       ccMetric = new MTCountMetric();
>       context.registerMetric("JavaBoltCount", ccMetric, 60);
>     }
> ----------------------------------------------------------------------------------------
> This is caused by TopologyContext's registerMetric. In TopologyContext, all 
> registered metrics holds in a map defined below:
> private Map<Integer,Map<Integer, Map<String, IMetric>>> _registeredMetrics;
> timeBucketSizeInSecs ----> __taskId ----> metricName ----> metirc



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

Reply via email to