Skip to content

Commit 40ba684

Browse files
refactor(logging): streamline klog verbosity handling
Replace SetKlogVerbosityFromConfigMap with a direct SetKlogVerbosity function that simplifies verbosity application. Update related calls in ConfigWatcher and tests to reflect this change, ensuring proper logging behavior for zero values. This refactor enhances clarity and reduces redundancy in the logging configuration process.
1 parent d2f9943 commit 40ba684

4 files changed

Lines changed: 20 additions & 16 deletions

File tree

pkg/adapter/v2/config.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -163,9 +163,7 @@ func (e *EnvConfig) GetLogger() *zap.SugaredLogger {
163163

164164
logger, _ := logging.NewLoggerFromConfig(loggingConfig, e.Component)
165165

166-
if _, err := pkgutils.SetKlogVerbosityFromConfigMap(map[string]string{
167-
pkgutils.KlogVerbosityKey: e.KlogVerbosity,
168-
}); err != nil {
166+
if _, err := pkgutils.SetKlogVerbosity(e.KlogVerbosity); err != nil {
169167
logger.Warnw("Failed to set klog verbosity", zap.Error(err))
170168
}
171169

pkg/reconciler/source/config_watcher.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -136,10 +136,6 @@ func (cw *ConfigWatcher) updateFromLoggingConfigMap(cfg *corev1.ConfigMap) {
136136
cw.loggingCfg = loggingCfg
137137
cw.klogVerbosity = cfg.Data[pkgutils.KlogVerbosityKey]
138138

139-
if _, err := pkgutils.SetKlogVerbosityFromConfigMap(cfg.Data); err != nil {
140-
cw.logger.Warnw("failed to apply klog verbosity", zap.Error(err))
141-
}
142-
143139
cw.logger.Debugw("Updated logging config from ConfigMap", zap.Any("ConfigMap", cfg))
144140
}
145141

pkg/utils/logging.go

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,11 @@ var (
6060
klogMu sync.Mutex
6161
)
6262

63-
// SetKlogVerbosityFromConfigMap reads klog-verbosity from the ConfigMap data and
64-
// applies it to klog. Missing, empty, or "0" values are no-ops and return
65-
// (false, nil). A level in the range 1–9 is applied and returns (true, nil).
66-
func SetKlogVerbosityFromConfigMap(data map[string]string) (bool, error) {
67-
level, ok := data[KlogVerbosityKey]
68-
if !ok || level == "" || level == "0" {
63+
// SetKlogVerbosity applies the given verbosity level string directly to klog.
64+
// An empty string is a no-op and returns (false, nil).
65+
// "0" resets verbosity and levels 1–9 raise it; both return (true, nil).
66+
func SetKlogVerbosity(level string) (bool, error) {
67+
if level == "" {
6968
return false, nil
7069
}
7170

@@ -82,6 +81,17 @@ func SetKlogVerbosityFromConfigMap(data map[string]string) (bool, error) {
8281
return true, nil
8382
}
8483

84+
// SetKlogVerbosityFromConfigMap reads klog-verbosity from the ConfigMap data and
85+
// applies it to klog. Missing or empty values are no-ops and return (false, nil).
86+
// "0" resets verbosity and levels 1–9 raise it; both return (true, nil).
87+
func SetKlogVerbosityFromConfigMap(data map[string]string) (bool, error) {
88+
level, ok := data[KlogVerbosityKey]
89+
if !ok || level == "" {
90+
return false, nil
91+
}
92+
return SetKlogVerbosity(level)
93+
}
94+
8595
// UpdateKlogVerbosityFromConfigMap returns a ConfigMap watch handler that updates
8696
// klog verbosity when the config-logging ConfigMap changes.
8797
func UpdateKlogVerbosityFromConfigMap(logger *zap.SugaredLogger) func(*corev1.ConfigMap) {

pkg/utils/logging_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ func TestSetKlogVerbosityFromConfigMap(t *testing.T) {
8181
{
8282
name: "zero value",
8383
data: map[string]string{KlogVerbosityKey: "0"},
84-
wantApplied: false,
84+
wantApplied: true,
8585
wantErr: false,
8686
},
8787
{
@@ -155,10 +155,10 @@ func TestUpdateKlogVerbosityFromConfigMap(t *testing.T) {
155155
wantInfo: false,
156156
},
157157
{
158-
name: "zero value - no log",
158+
name: "zero value - info logged",
159159
data: map[string]string{KlogVerbosityKey: "0"},
160160
wantWarn: false,
161-
wantInfo: false,
161+
wantInfo: true,
162162
},
163163
{
164164
name: "empty value - no log",

0 commit comments

Comments
 (0)