Github user ptgoetz commented on the issue:

    https://github.com/apache/storm/pull/2203
  
    @revans2 @HeartSaVioR 
    
    I added stream id and executor id to the metrics names, and implemented 
replacing "." with "_".
    
    One consequence of adding stream id was having to get-or-create metrics on 
the fly, as opposed to creating them up-front. That means there will be a 
lookup, string concat, and string replacement on each metrics update, which 
could affect performance. (Unless I'm missing something obvious, we have to do 
it that way because we don't know the stream IDs ahead of time and have to 
instantiate metrics as we see them).
    
    As far as issuing warnings when names contain ".", one option would be to 
handle the warnings in an `ITopologyValidator` instance. We could have 
`DefaultTopologyValidator` log warnings when certain names contain a ".". We 
could also provide something along the lines of a `StrictTopologyValidator` 
that throws a `InvalidTopologyException` as opposed to just warning. That might 
be an easy way to transition from warning to error that also gives users to 
turn strict checking on or off.
    
    What do you think about that approach?


---

Reply via email to