1
0
Fork 0
telegraf/migrations/inputs_io/migration.go
Daniel Baumann 4978089aab
Adding upstream version 1.34.4.
Signed-off-by: Daniel Baumann <daniel@debian.org>
2025-05-24 07:26:29 +02:00

32 lines
806 B
Go

package inputs_io
import (
"github.com/influxdata/toml"
"github.com/influxdata/toml/ast"
"github.com/influxdata/telegraf/migrations"
)
// Migration function
func migrate(tbl *ast.Table) ([]byte, string, error) {
// Load the plugin config and directly encode it again as we do not want to
// modify anything beyond the name.
// Decode the old data structure
var plugin interface{}
if err := toml.UnmarshalTable(tbl, &plugin); err != nil {
return nil, "", err
}
// Create the corresponding metric configurations
cfg := migrations.CreateTOMLStruct("inputs", "diskio")
cfg.Add("inputs", "diskio", plugin)
output, err := toml.Marshal(cfg)
return output, "", err
}
// Register the migration function for the plugin type
func init() {
migrations.AddPluginMigration("inputs.io", migrate)
}