From 31a87df2ff88bbe1e9798521a5806104294dbb6e Mon Sep 17 00:00:00 2001 From: Joshua Powers Date: Mon, 6 Feb 2023 02:05:59 -0700 Subject: [PATCH] fix(agent): Only read the config once (#12607) --- cmd/telegraf/telegraf.go | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/cmd/telegraf/telegraf.go b/cmd/telegraf/telegraf.go index 3667e8793..81a27ed37 100644 --- a/cmd/telegraf/telegraf.go +++ b/cmd/telegraf/telegraf.go @@ -111,7 +111,7 @@ func (t *Telegraf) GetSecretStore(id string) (telegraf.SecretStore, error) { } func (t *Telegraf) reloadLoop() error { - _, err := t.loadConfiguration() + cfg, err := t.loadConfiguration() if err != nil { return err } @@ -151,7 +151,7 @@ func (t *Telegraf) reloadLoop() error { } }() - err := t.runAgent(ctx) + err := t.runAgent(ctx, cfg) if err != nil && err != context.Canceled { return fmt.Errorf("[telegraf] Error running agent: %v", err) } @@ -230,12 +230,7 @@ func (t *Telegraf) loadConfiguration() (*config.Config, error) { return c, nil } -func (t *Telegraf) runAgent(ctx context.Context) error { - c, err := t.loadConfiguration() - if err != nil { - return err - } - +func (t *Telegraf) runAgent(ctx context.Context, c *config.Config) error { if !(t.test || t.testWait != 0) && len(c.Outputs) == 0 { return errors.New("no outputs found, did you provide a valid config file?") }