From b776a0de52b0a166144bba39a0b4f1fb095a2819 Mon Sep 17 00:00:00 2001 From: Jeffrey Chien Date: Fri, 11 Jul 2025 20:06:25 -0400 Subject: [PATCH] Add log concurrency flag. --- .../agenthealth/handler/useragent/useragent.go | 14 ++++++++++++-- plugins/outputs/cloudwatchlogs/cloudwatchlogs.go | 1 + 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/extension/agenthealth/handler/useragent/useragent.go b/extension/agenthealth/handler/useragent/useragent.go index 152a3b6e6d..949482f752 100644 --- a/extension/agenthealth/handler/useragent/useragent.go +++ b/extension/agenthealth/handler/useragent/useragent.go @@ -33,6 +33,7 @@ const ( flagEnhancedContainerInsights = "enhanced_container_insights" flagSELinux = "selinux" flagROSA = "rosa" + flagLogConcurrency = "log_concurrency" separator = " " typeInputs = "inputs" @@ -48,6 +49,7 @@ var ( type UserAgent interface { SetComponents(otelCfg *otelcol.Config, telegrafCfg *telegraf.Config) SetContainerInsightsFlag() + SetLogConcurrencyFlag() Header(isUsageDataEnabled bool) string Listen(listener func()) } @@ -136,10 +138,18 @@ func (ua *userAgent) SetComponents(otelCfg *otelcol.Config, telegrafCfg *telegra } func (ua *userAgent) SetContainerInsightsFlag() { + ua.setFlag(flagContainerInsights) +} + +func (ua *userAgent) SetLogConcurrencyFlag() { + ua.setFlag(flagLogConcurrency) +} + +func (ua *userAgent) setFlag(flag string) { ua.dataLock.Lock() defer ua.dataLock.Unlock() - if !ua.outputs.Contains(flagContainerInsights) { - ua.outputs.Add(flagContainerInsights) + if !ua.outputs.Contains(flag) { + ua.outputs.Add(flag) ua.outputsStr.Store(componentsStr(typeOutputs, ua.outputs)) ua.notify() } diff --git a/plugins/outputs/cloudwatchlogs/cloudwatchlogs.go b/plugins/outputs/cloudwatchlogs/cloudwatchlogs.go index 09641d651d..65c185c89e 100644 --- a/plugins/outputs/cloudwatchlogs/cloudwatchlogs.go +++ b/plugins/outputs/cloudwatchlogs/cloudwatchlogs.go @@ -147,6 +147,7 @@ func (c *CloudWatchLogs) getDest(t pusher.Target, logSrc logs.LogSrc) *cwDest { c.once.Do(func() { if c.Concurrency > 1 { c.workerPool = pusher.NewWorkerPool(c.Concurrency) + useragent.Get().SetLogConcurrencyFlag() } c.targetManager = pusher.NewTargetManager(c.Log, client) })