fix: Fix panic in parsers due to missing Log for all plugins using SetParserFunc. (#10288)
This commit is contained in:
parent
68233c5934
commit
d1d81b71ac
|
|
@ -1190,7 +1190,18 @@ func (c *Config) addInput(name string, table *ast.Table) error {
|
|||
return err
|
||||
}
|
||||
t.SetParserFunc(func() (parsers.Parser, error) {
|
||||
return parsers.NewParser(config)
|
||||
parser, err := parsers.NewParser(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
logger := models.NewLogger("parsers", config.DataFormat, name)
|
||||
models.SetLoggerOnPlugin(parser, logger)
|
||||
if initializer, ok := parser.(telegraf.Initializer); ok {
|
||||
if err := initializer.Init(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
return parser, nil
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue