Fix Name field in template processor (#7258)
This commit is contained in:
parent
cc6c77f301
commit
3dab845040
|
@ -1,16 +1,17 @@
|
|||
package template
|
||||
|
||||
import (
|
||||
"github.com/influxdata/telegraf"
|
||||
"time"
|
||||
|
||||
"github.com/influxdata/telegraf"
|
||||
)
|
||||
|
||||
type TemplateMetric struct {
|
||||
metric telegraf.Metric
|
||||
}
|
||||
|
||||
func (m *TemplateMetric) Measurement() string {
|
||||
return m.Measurement()
|
||||
func (m *TemplateMetric) Name() string {
|
||||
return m.metric.Name()
|
||||
}
|
||||
|
||||
func (m *TemplateMetric) Tag(key string) string {
|
||||
|
|
|
@ -7,8 +7,45 @@ import (
|
|||
"github.com/influxdata/telegraf"
|
||||
"github.com/influxdata/telegraf/testutil"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestName(t *testing.T) {
|
||||
plugin := TemplateProcessor{
|
||||
Tag: "measurement",
|
||||
Template: "{{ .Name }}",
|
||||
}
|
||||
|
||||
err := plugin.Init()
|
||||
require.NoError(t, err)
|
||||
|
||||
input := []telegraf.Metric{
|
||||
testutil.MustMetric(
|
||||
"cpu",
|
||||
map[string]string{},
|
||||
map[string]interface{}{
|
||||
"time_idle": 42,
|
||||
},
|
||||
time.Unix(0, 0),
|
||||
),
|
||||
}
|
||||
|
||||
actual := plugin.Apply(input...)
|
||||
expected := []telegraf.Metric{
|
||||
testutil.MustMetric(
|
||||
"cpu",
|
||||
map[string]string{
|
||||
"measurement": "cpu",
|
||||
},
|
||||
map[string]interface{}{
|
||||
"time_idle": 42,
|
||||
},
|
||||
time.Unix(0, 0),
|
||||
),
|
||||
}
|
||||
testutil.RequireMetricsEqual(t, expected, actual)
|
||||
}
|
||||
|
||||
func TestTagTemplateConcatenate(t *testing.T) {
|
||||
now := time.Now()
|
||||
|
||||
|
|
Loading…
Reference in New Issue