Add metric pass/drop filter

This commit is contained in:
Thibault Cohen
2016-02-20 00:35:12 -05:00
committed by Cameron Sparr
parent 9ce8d78835
commit d00550c45f
8 changed files with 202 additions and 34 deletions

View File

@@ -43,6 +43,11 @@ func (ac *accumulator) Add(
) {
fields := make(map[string]interface{})
fields["value"] = value
if !ac.inputConfig.Filter.ShouldNamePass(measurement) {
return
}
ac.AddFields(measurement, fields, tags, t...)
}
@@ -56,6 +61,10 @@ func (ac *accumulator) AddFields(
return
}
if !ac.inputConfig.Filter.ShouldNamePass(measurement) {
return
}
if !ac.inputConfig.Filter.ShouldTagsPass(tags) {
return
}
@@ -92,7 +101,7 @@ func (ac *accumulator) AddFields(
for k, v := range fields {
// Filter out any filtered fields
if ac.inputConfig != nil {
if !ac.inputConfig.Filter.ShouldPass(k) {
if !ac.inputConfig.Filter.ShouldFieldsPass(k) {
continue
}
}