diff --git a/cmd/telegraf/cmd_plugins.go b/cmd/telegraf/cmd_plugins.go index bbe055a550516..4821adcaf8158 100644 --- a/cmd/telegraf/cmd_plugins.go +++ b/cmd/telegraf/cmd_plugins.go @@ -10,8 +10,10 @@ import ( "github.com/influxdata/telegraf/plugins/aggregators" "github.com/influxdata/telegraf/plugins/inputs" "github.com/influxdata/telegraf/plugins/outputs" + "github.com/influxdata/telegraf/plugins/parsers" "github.com/influxdata/telegraf/plugins/processors" "github.com/influxdata/telegraf/plugins/secretstores" + "github.com/influxdata/telegraf/plugins/serializers" "github.com/urfave/cli/v2" ) @@ -42,12 +44,16 @@ func getPluginCommands(outputBuffer io.Writer) []*cli.Command { outputBuffer.Write(pluginNames(processors.Deprecations, "processors")) outputBuffer.Write(pluginNames(aggregators.Deprecations, "aggregators")) outputBuffer.Write(pluginNames(secretstores.Deprecations, "secretstores")) + outputBuffer.Write(pluginNames(parsers.Deprecations, "parsers")) + outputBuffer.Write(pluginNames(serializers.Deprecations, "serializers")) } else { outputBuffer.Write(pluginNames(inputs.Inputs, "inputs")) outputBuffer.Write(pluginNames(outputs.Outputs, "outputs")) outputBuffer.Write(pluginNames(processors.Processors, "processors")) outputBuffer.Write(pluginNames(aggregators.Aggregators, "aggregators")) outputBuffer.Write(pluginNames(secretstores.SecretStores, "secretstores")) + outputBuffer.Write(pluginNames(parsers.Parsers, "parsers")) + outputBuffer.Write(pluginNames(serializers.Serializers, "serializers")) } return nil @@ -143,6 +149,42 @@ func getPluginCommands(outputBuffer io.Writer) []*cli.Command { return nil }, }, + { + Name: "parsers", + Usage: "Print available parser plugins", + Flags: []cli.Flag{ + &cli.BoolFlag{ + Name: "deprecated", + Usage: "print only deprecated plugins", + }, + }, + Action: func(cCtx *cli.Context) error { + if cCtx.Bool("deprecated") { + outputBuffer.Write(pluginNames(parsers.Deprecations, "parsers")) + } else { + outputBuffer.Write(pluginNames(parsers.Parsers, "parsers")) + } + return nil + }, + }, + { + Name: "serializers", + Usage: "Print available serializer plugins", + Flags: []cli.Flag{ + &cli.BoolFlag{ + Name: "deprecated", + Usage: "print only deprecated plugins", + }, + }, + Action: func(cCtx *cli.Context) error { + if cCtx.Bool("deprecated") { + outputBuffer.Write(pluginNames(serializers.Deprecations, "serializers")) + } else { + outputBuffer.Write(pluginNames(serializers.Serializers, "serializers")) + } + return nil + }, + }, }, }, } diff --git a/docs/CUSTOMIZATION.md b/docs/CUSTOMIZATION.md index ae551d79d3ee0..eb669a73a584b 100644 --- a/docs/CUSTOMIZATION.md +++ b/docs/CUSTOMIZATION.md @@ -4,8 +4,8 @@ You can build customized versions of Telegraf with a specific plugin set using the [custom builder](/tools/custom_builder) tool or [build-tags](https://pkg.go.dev/cmd/go#hdr-Build_constraints). For build tags, the plugins can be selected either category-wise, i.e. -`inputs`, `outputs`,`processors`, `aggregators` and `parsers` or -individually, e.g. `inputs.modbus` or `outputs.influxdb`. +`inputs`, `outputs`,`processors`, `aggregators`, `parsers`, `secretstores` +and `serializers` or individually, e.g. `inputs.modbus` or `outputs.influxdb`. Usually the build tags correspond to the plugin names used in the Telegraf configuration. To be sure, check the files in the corresponding diff --git a/plugins/parsers/deprecations.go b/plugins/parsers/deprecations.go new file mode 100644 index 0000000000000..c2270dd2bc8d7 --- /dev/null +++ b/plugins/parsers/deprecations.go @@ -0,0 +1,6 @@ +package parsers + +import "github.com/influxdata/telegraf" + +// Deprecations lists the deprecated plugins +var Deprecations = map[string]telegraf.DeprecationInfo{} diff --git a/plugins/serializers/deprecations.go b/plugins/serializers/deprecations.go new file mode 100644 index 0000000000000..fec8b33b6ec4b --- /dev/null +++ b/plugins/serializers/deprecations.go @@ -0,0 +1,6 @@ +package serializers + +import "github.com/influxdata/telegraf" + +// Deprecations lists the deprecated plugins +var Deprecations = map[string]telegraf.DeprecationInfo{}