From 7985441581e2445236464295ca2464799f2e11ca Mon Sep 17 00:00:00 2001 From: musa-asad <musaasad@amazon.com> Date: Thu, 24 Apr 2025 11:41:32 -0400 Subject: [PATCH 1/3] Add check for prometheus cluster name --- translator/translate/otel/common/common.go | 11 +++-- .../processor/awsentity/translator_test.go | 40 +++++++++++++++++++ 2 files changed, 48 insertions(+), 3 deletions(-) diff --git a/translator/translate/otel/common/common.go b/translator/translate/otel/common/common.go index ea8e00f309..e240825da3 100644 --- a/translator/translate/otel/common/common.go +++ b/translator/translate/otel/common/common.go @@ -486,9 +486,14 @@ func KueueContainerInsightsEnabled(conf *confmap.Conf) bool { } func GetClusterName(conf *confmap.Conf) string { - val, ok := GetString(conf, ConfigKey(LogsKey, MetricsCollectedKey, KubernetesKey, "cluster_name")) - if ok && val != "" { - return val + val1, ok1 := GetString(conf, ConfigKey(LogsKey, MetricsCollectedKey, KubernetesKey, "cluster_name")) + if ok1 && val1 != "" { + return val1 + } + + val2, ok2 := GetString(conf, ConfigKey(LogsKey, MetricsCollectedKey, PrometheusKey, "cluster_name")) + if ok2 && val2 != "" { + return val2 } envVarClusterName := os.Getenv("K8S_CLUSTER_NAME") diff --git a/translator/translate/otel/processor/awsentity/translator_test.go b/translator/translate/otel/processor/awsentity/translator_test.go index f9e42de5a7..05f84bbeaf 100644 --- a/translator/translate/otel/processor/awsentity/translator_test.go +++ b/translator/translate/otel/processor/awsentity/translator_test.go @@ -96,6 +96,9 @@ func TestTranslate(t *testing.T) { "kubernetes": map[string]interface{}{ "cluster_name": "ci-logs", }, + "prometheus": map[string]interface{}{ + "cluster_name": "ci-prometheus", + }, }, }, }, @@ -108,6 +111,43 @@ func TestTranslate(t *testing.T) { Platform: config.ModeEC2, }, }, + "PrometheusUnderLogs": { + input: map[string]interface{}{ + "logs": map[string]interface{}{ + "metrics_collected": map[string]interface{}{ + "prometheus": map[string]interface{}{ + "cluster_name": "ci-prometheus", + }, + }, + }, + }, + mode: config.ModeEC2, + kubernetesMode: config.ModeEKS, + want: &awsentity.Config{ + ClusterName: "ci-prometheus", + KubernetesMode: config.ModeEKS, + Platform: config.ModeEC2, + }, + }, + "PrometheusPrecedence": { + input: map[string]interface{}{ + "logs": map[string]interface{}{ + "metrics_collected": map[string]interface{}{ + "prometheus": map[string]interface{}{ + "cluster_name": "ci-prometheus", + }, + }, + }, + }, + mode: config.ModeEC2, + kubernetesMode: config.ModeEKS, + envClusterName: "env-cluster", + want: &awsentity.Config{ + ClusterName: "ci-prometheus", + KubernetesMode: config.ModeEKS, + Platform: config.ModeEC2, + }, + }, "ECS": { input: map[string]interface{}{}, mode: config.ModeECS, From 5074e338589415bc258ba895271f05d2f912829e Mon Sep 17 00:00:00 2001 From: musa-asad <musaasad@amazon.com> Date: Thu, 24 Apr 2025 11:44:41 -0400 Subject: [PATCH 2/3] add under app signals test too --- .../translate/otel/processor/awsentity/translator_test.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/translator/translate/otel/processor/awsentity/translator_test.go b/translator/translate/otel/processor/awsentity/translator_test.go index 05f84bbeaf..82b7091883 100644 --- a/translator/translate/otel/processor/awsentity/translator_test.go +++ b/translator/translate/otel/processor/awsentity/translator_test.go @@ -79,6 +79,9 @@ func TestTranslate(t *testing.T) { "kubernetes": map[string]interface{}{ "cluster_name": "ci-logs", }, + "prometheus": map[string]interface{}{ + "cluster_name": "ci-prometheus", + }, }, }}, mode: config.ModeEC2, From 993b008d3e84039ea42c475685d39c75a96bbd3f Mon Sep 17 00:00:00 2001 From: musa-asad <musaasad@amazon.com> Date: Mon, 28 Apr 2025 08:54:40 -0400 Subject: [PATCH 3/3] add env var check --- translator/translate/logs/util/get_eks_cluster_name.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/translator/translate/logs/util/get_eks_cluster_name.go b/translator/translate/logs/util/get_eks_cluster_name.go index f5aa8539af..1febfd6078 100644 --- a/translator/translate/logs/util/get_eks_cluster_name.go +++ b/translator/translate/logs/util/get_eks_cluster_name.go @@ -5,6 +5,7 @@ package util import ( "log" + "os" "strings" "time" @@ -34,6 +35,12 @@ func GetEKSClusterName(sectionKey string, input map[string]interface{}) string { //The key is in current input instance, use the value in JSON. clusterName = val.(string) } + if clusterName == "" { + envVarClusterName := os.Getenv("K8S_CLUSTER_NAME") + if envVarClusterName != "" { + clusterName = envVarClusterName + } + } if clusterName == "" { clusterName = GetClusterNameFromEc2Tagger() }