diff --git a/api/v1beta2/foundationdbcluster_types.go b/api/v1beta2/foundationdbcluster_types.go index 27d2c5cc..cb201a05 100644 --- a/api/v1beta2/foundationdbcluster_types.go +++ b/api/v1beta2/foundationdbcluster_types.go @@ -2468,6 +2468,15 @@ func (cluster *FoundationDBCluster) NeedsReplacement(processGroup *ProcessGroupS return processGroup.ProcessClass.IsTransaction() } +// GetLogGroup returns the cluster's logGroup for use in trace logs +func (cluster *FoundationDBCluster) GetLogGroup() string { + logGroup := cluster.Spec.LogGroup + if logGroup == "" { + logGroup = cluster.Name + } + return logGroup +} + // GetResourceLabels returns the resource labels for all created resources func (cluster *FoundationDBCluster) GetResourceLabels() map[string]string { if cluster.Spec.LabelConfig.ResourceLabels != nil { diff --git a/internal/monitor_conf.go b/internal/monitor_conf.go index da9b1080..a4972179 100644 --- a/internal/monitor_conf.go +++ b/internal/monitor_conf.go @@ -166,10 +166,7 @@ func GetMonitorProcessConfiguration(cluster *fdbv1beta2.FoundationDBCluster, pro configuration.RunServers = pointer.Bool(false) } - logGroup := cluster.Spec.LogGroup - if logGroup == "" { - logGroup = cluster.Name - } + logGroup := cluster.GetLogGroup() var zoneVariable string if strings.HasPrefix(cluster.Spec.FaultDomain.ValueFrom, "$") { diff --git a/internal/pod_models.go b/internal/pod_models.go index d55c49a7..823f2286 100644 --- a/internal/pod_models.go +++ b/internal/pod_models.go @@ -207,6 +207,8 @@ func configureContainersForUnifiedImages(cluster *fdbv1beta2.FoundationDBCluster mainContainer.Env = append(mainContainer.Env, corev1.EnvVar{Name: "FDB_POD_NAMESPACE", ValueFrom: &corev1.EnvVarSource{ FieldRef: &corev1.ObjectFieldSelector{FieldPath: "metadata.namespace"}, }}) + extendEnv(mainContainer, corev1.EnvVar{Name: "FDB_NETWORK_OPTION_TRACE_LOG_GROUP", Value: cluster.GetLogGroup()}, + corev1.EnvVar{Name: "FDB_NETWORK_OPTION_TRACE_ENABLE", Value: "/var/log/fdb-trace-logs"}) if cluster.DefineDNSLocalityFields() { mainContainer.Env = append(mainContainer.Env, corev1.EnvVar{Name: "FDB_DNS_NAME", Value: GetPodDNSName(cluster, processGroup.GetPodName(cluster))}) } @@ -419,10 +421,7 @@ func GetPodSpec(cluster *fdbv1beta2.FoundationDBCluster, processGroup *fdbv1beta extendEnv(mainContainer, corev1.EnvVar{Name: "FDB_TLS_CA_FILE", Value: "/var/dynamic-conf/ca.pem"}) } - logGroup := cluster.Spec.LogGroup - if logGroup == "" { - logGroup = cluster.Name - } + logGroup := cluster.GetLogGroup() podName := processGroup.GetPodName(cluster) if useUnifiedImage { diff --git a/internal/pod_models_test.go b/internal/pod_models_test.go index eb61749f..9c799c40 100644 --- a/internal/pod_models_test.go +++ b/internal/pod_models_test.go @@ -534,6 +534,8 @@ var _ = Describe("pod_models", func() { {Name: "FDB_POD_NAMESPACE", ValueFrom: &corev1.EnvVarSource{ FieldRef: &corev1.ObjectFieldSelector{FieldPath: "metadata.namespace"}, }}, + {Name: "FDB_NETWORK_OPTION_TRACE_LOG_GROUP", Value: cluster.Name}, + {Name: "FDB_NETWORK_OPTION_TRACE_ENABLE", Value: "/var/log/fdb-trace-logs"}, })) Expect(*mainContainer.Resources.Limits.Cpu()).To(Equal(resource.MustParse("1"))) @@ -644,6 +646,8 @@ var _ = Describe("pod_models", func() { {Name: "FDB_POD_NAMESPACE", ValueFrom: &corev1.EnvVarSource{ FieldRef: &corev1.ObjectFieldSelector{FieldPath: "metadata.namespace"}, }}, + {Name: "FDB_NETWORK_OPTION_TRACE_LOG_GROUP", Value: cluster.Name}, + {Name: "FDB_NETWORK_OPTION_TRACE_ENABLE", Value: "/var/log/fdb-trace-logs"}, })) }) @@ -698,6 +702,8 @@ var _ = Describe("pod_models", func() { {Name: "FDB_POD_NAMESPACE", ValueFrom: &corev1.EnvVarSource{ FieldRef: &corev1.ObjectFieldSelector{FieldPath: "metadata.namespace"}, }}, + {Name: "FDB_NETWORK_OPTION_TRACE_LOG_GROUP", Value: cluster.Name}, + {Name: "FDB_NETWORK_OPTION_TRACE_ENABLE", Value: "/var/log/fdb-trace-logs"}, })) }) @@ -754,6 +760,8 @@ var _ = Describe("pod_models", func() { {Name: "FDB_POD_NAMESPACE", ValueFrom: &corev1.EnvVarSource{ FieldRef: &corev1.ObjectFieldSelector{FieldPath: "metadata.namespace"}, }}, + {Name: "FDB_NETWORK_OPTION_TRACE_LOG_GROUP", Value: cluster.Name}, + {Name: "FDB_NETWORK_OPTION_TRACE_ENABLE", Value: "/var/log/fdb-trace-logs"}, })) })