From fb24bcfee0e37300cdaafb1b99a2aa0af7a19fd3 Mon Sep 17 00:00:00 2001 From: Harshavardhana Date: Mon, 9 Sep 2024 02:36:47 -0700 Subject: [PATCH] fix: set audit/logger webhook retry interval to maximum 1m (#20404) --- internal/logger/config.go | 6 ++++++ internal/logger/help.go | 16 ++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/internal/logger/config.go b/internal/logger/config.go index 389b23021..4fbd8e108 100644 --- a/internal/logger/config.go +++ b/internal/logger/config.go @@ -494,6 +494,9 @@ func lookupLoggerWebhookConfig(scfg config.Config, cfg Config) (Config, error) { if err != nil { return cfg, err } + if retryInterval > time.Minute { + return cfg, fmt.Errorf("maximum allowed value for retry interval is '1m': %s", retryIntervalCfgVal) + } cfg.HTTP[k] = http.Config{ Enabled: true, Endpoint: url, @@ -571,6 +574,9 @@ func lookupAuditWebhookConfig(scfg config.Config, cfg Config) (Config, error) { if err != nil { return cfg, err } + if retryInterval > time.Minute { + return cfg, fmt.Errorf("maximum allowed value for retry interval is '1m': %s", retryIntervalCfgVal) + } cfg.AuditWebhook[k] = http.Config{ Enabled: true, Endpoint: url, diff --git a/internal/logger/help.go b/internal/logger/help.go index d751200e5..6a16e1ce4 100644 --- a/internal/logger/help.go +++ b/internal/logger/help.go @@ -76,6 +76,18 @@ var ( Optional: true, Type: "string", }, + config.HelpKV{ + Key: MaxRetry, + Description: `maximum retry count before we start dropping logged event(s)`, + Optional: true, + Type: "number", + }, + config.HelpKV{ + Key: RetryInterval, + Description: `sleep between each retries, allowed maximum value is '1m' e.g. '10s'`, + Optional: true, + Type: "duration", + }, config.HelpKV{ Key: config.Comment, Description: config.DefaultComment, @@ -133,13 +145,13 @@ var ( }, config.HelpKV{ Key: MaxRetry, - Description: `maximum retry count before we start dropping upto batch_size events`, + Description: `maximum retry count before we start dropping audit event(s)`, Optional: true, Type: "number", }, config.HelpKV{ Key: RetryInterval, - Description: `maximum retry sleeps between each retries`, + Description: `sleep between each retries, allowed maximum value is '1m' e.g. '10s'`, Optional: true, Type: "duration", },