Github user merrimanr commented on a diff in the pull request:
    --- Diff: 
    @@ -132,8 +130,9 @@ public void init() {
    -  public List<JSONObject> parse(byte[] rawMessage) {
    -    if (grok == null) {
    +  public List<JSONObject> parse(byte[] rawMessage, SensorParserConfig 
sensorParserConfig) {
    +    if (grok == null || isGrokPatternUpdated(sensorParserConfig) || 
isPatternLabelUpdated(sensorParserConfig)) {
    +      configure(sensorParserConfig.getParserConfig());
    --- End diff --
    The timestampField is not what you think it is.  It represents the primary 
timestamp field of the message that's formatted downstream in the parser, not 
the last time the pattern was changed.  I would like to see it go away 
eventually, since you can now do the same thing with Stellar in the 
transformation phase.
    I agree with you though, since it's called for every message that check 
needs to be as fast as possible (although you wouldn't use a GrokParser for a 
high velocity sensor anyways).  I think a hash of grokPattern + patternLabel 
will do the trick.  I will add that in.  

If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at or file a JIRA ticket
with INFRA.

Reply via email to