From 041df36aa6aca6592a8cd3e0731d797dbcafe580 Mon Sep 17 00:00:00 2001 From: quzard <1191890118@qq.com> Date: Tue, 9 Apr 2024 09:40:16 +0800 Subject: [PATCH] Fix parameter errors for container metadata preview. (#1430) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 容器元信息预览修复 * add GetBaseConfigName * CollectingContainersMeta * CollectingContainersMeta * fix * delete GetBaseConfigName --- pluginmanager/container_config_manager.go | 6 +++--- pluginmanager/logstore_config.go | 16 +++++++++++----- .../input/docker/logmeta/metric_docker_file.go | 10 +++++----- 3 files changed, 19 insertions(+), 13 deletions(-) diff --git a/pluginmanager/container_config_manager.go b/pluginmanager/container_config_manager.go index 946e5f582c..2b71dc462e 100644 --- a/pluginmanager/container_config_manager.go +++ b/pluginmanager/container_config_manager.go @@ -129,7 +129,7 @@ func refreshEnvAndLabel() { containerLabelSet = make(map[string]struct{}) k8sLabelSet = make(map[string]struct{}) for _, logstoreConfig := range LogtailConfig { - if logstoreConfig.CollectContainersFlag { + if logstoreConfig.CollectingContainersMeta { for key := range logstoreConfig.EnvSet { envSet[key] = struct{}{} } @@ -150,7 +150,7 @@ func compareEnvAndLabel() (diffEnvSet, diffContainerLabelSet, diffK8sLabelSet ma diffContainerLabelSet = make(map[string]struct{}) diffK8sLabelSet = make(map[string]struct{}) for _, logstoreConfig := range LogtailConfig { - if logstoreConfig.CollectContainersFlag { + if logstoreConfig.CollectingContainersMeta { for key := range logstoreConfig.EnvSet { if _, ok := envSet[key]; !ok { envSet[key] = struct{}{} @@ -268,7 +268,7 @@ func compareEnvAndLabelAndRecordContainer() []*helper.ContainerDetail { func isCollectContainers() bool { for _, logstoreConfig := range LogtailConfig { - if logstoreConfig.CollectContainersFlag { + if logstoreConfig.CollectingContainersMeta { return true } } diff --git a/pluginmanager/logstore_config.go b/pluginmanager/logstore_config.go index 7311c57b63..d392eabaea 100644 --- a/pluginmanager/logstore_config.go +++ b/pluginmanager/logstore_config.go @@ -113,10 +113,10 @@ type LogstoreConfig struct { // flushWaitSema sync.WaitGroup pauseOrResumeWg sync.WaitGroup - K8sLabelSet map[string]struct{} - ContainerLabelSet map[string]struct{} - EnvSet map[string]struct{} - CollectContainersFlag bool + K8sLabelSet map[string]struct{} + ContainerLabelSet map[string]struct{} + EnvSet map[string]struct{} + CollectingContainersMeta bool } func (p *LogstoreStatistics) Init(context pipeline.Context) { @@ -487,7 +487,13 @@ func createLogstoreConfig(project string, logstore string, configName string, lo if !valid { continue } - logstoreC.CollectContainersFlag = collectContainersFlag + logstoreC.CollectingContainersMeta = collectContainersFlag + } else if strings.Contains(lowerKey, "collectingcontainersmeta") { + collectingContainersMeta, valid := value.(bool) + if !valid { + continue + } + logstoreC.CollectingContainersMeta = collectingContainersMeta } } } diff --git a/plugins/input/docker/logmeta/metric_docker_file.go b/plugins/input/docker/logmeta/metric_docker_file.go index 48065e9a5b..ef6e2e4b6f 100644 --- a/plugins/input/docker/logmeta/metric_docker_file.go +++ b/plugins/input/docker/logmeta/metric_docker_file.go @@ -87,10 +87,10 @@ type InputDockerFile struct { lastUpdateTime int64 // Last return of GetAllAcceptedInfoV2 - fullList map[string]bool - matchList map[string]*helper.DockerInfoDetail - CollectContainersFlag bool - firstStart bool + fullList map[string]bool + matchList map[string]*helper.DockerInfoDetail + CollectingContainersMeta bool + firstStart bool } func formatPath(path string) string { @@ -343,7 +343,7 @@ func (idf *InputDockerFile) Collect(collector pipeline.Collector) error { logger.Warning(idf.context.GetRuntimeContext(), "DOCKER_FILE_MATCH_ALARM", "unknow error", "can't find path from this container", "path", idf.LogPath, "container", info.ContainerInfo.Name) } } - if idf.CollectContainersFlag { + if idf.CollectingContainersMeta { configResult := &helper.ContainerConfigResult{ DataType: "container_config_result", Project: idf.context.GetProject(),