Skip to content

Commit

Permalink
speed up statsd parser
Browse files Browse the repository at this point in the history
  • Loading branch information
dgnorton committed Sep 14, 2016
1 parent c3aa43a commit 57b9d98
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions plugins/inputs/statsd/statsd.go
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,8 @@ type Statsd struct {
Templates []string

listener *net.UDPConn

graphiteParser *graphite.GraphiteParser
}

// One statsd metric, form is <bucket>:<value>|<mtype>|@<samplerate>
Expand Down Expand Up @@ -505,10 +507,17 @@ func (s *Statsd) parseName(bucket string) (string, string, map[string]string) {

var field string
name := bucketparts[0]
p, err := graphite.NewGraphiteParser(s.MetricSeparator, s.Templates, nil)
if err == nil {
p.DefaultTags = tags
name, tags, field, _ = p.ApplyTemplate(name)

p := s.graphiteParser
var err error

if p == nil {
p, err = graphite.NewGraphiteParser(s.MetricSeparator, s.Templates, nil)
if err == nil {
s.graphiteParser = p
p.DefaultTags = tags
name, tags, field, _ = p.ApplyTemplate(name)
}
}

if s.ConvertNames {
Expand Down

0 comments on commit 57b9d98

Please sign in to comment.