chore(serializers.msgpack): Migrate to new-style framework (#13336)

This commit is contained in:
Sven Rebhan 2023-05-25 21:20:50 +02:00 committed by GitHub
parent bbe30f769d
commit a1743269cc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 12 deletions

View File

@ -0,0 +1,7 @@
//go:build !custom || serializers || serializers.msgpack
package all
import (
_ "github.com/influxdata/telegraf/plugins/serializers/msgpack" // register plugin
)

View File

@ -2,16 +2,12 @@ package msgpack
import (
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins/serializers"
)
// Serializer encodes metrics in MessagePack format
type Serializer struct{}
// NewSerializer creates a msgpack.Serializer
func NewSerializer() *Serializer {
return &Serializer{}
}
func marshalMetric(buf []byte, metric telegraf.Metric) ([]byte, error) {
return (&Metric{
Name: metric.Name(),
@ -41,3 +37,16 @@ func (s *Serializer) SerializeBatch(metrics []telegraf.Metric) ([]byte, error) {
}
return buf, nil
}
func init() {
serializers.Add("msgpack",
func() serializers.Serializer {
return &Serializer{}
},
)
}
// InitFromConfig is a compatibility function to construct the parser the old way
func (s *Serializer) InitFromConfig(_ *serializers.Config) error {
return nil
}

View File

@ -6,7 +6,6 @@ import (
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins/serializers/json"
"github.com/influxdata/telegraf/plugins/serializers/msgpack"
"github.com/influxdata/telegraf/plugins/serializers/nowmetric"
"github.com/influxdata/telegraf/plugins/serializers/prometheus"
"github.com/influxdata/telegraf/plugins/serializers/prometheusremotewrite"
@ -180,8 +179,6 @@ func NewSerializer(config *Config) (Serializer, error) {
serializer, err = NewPrometheusSerializer(config), nil
case "prometheusremotewrite":
serializer, err = NewPrometheusRemoteWriteSerializer(config), nil
case "msgpack":
serializer, err = NewMsgpackSerializer(), nil
default:
creator, found := Serializers[config.DataFormat]
if !found {
@ -263,7 +260,3 @@ func NewSplunkmetricSerializer(splunkmetricHecRouting bool, splunkmetricMultimet
func NewNowSerializer() (Serializer, error) {
return nowmetric.NewSerializer()
}
func NewMsgpackSerializer() Serializer {
return msgpack.NewSerializer()
}