Skip to content

Commit

Permalink
logs.go: use --log-level instead of --v
Browse files Browse the repository at this point in the history
  • Loading branch information
maelvls committed Oct 18, 2024
1 parent ddae5aa commit 6752d49
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 3 deletions.
12 changes: 12 additions & 0 deletions pkg/logs/logs.go
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ func AddFlags(fs *pflag.FlagSet) {
if !visibleFlagNames.Has(f.Name) {
tfs.MarkHidden(f.Name)
}

// The default is "text" and the usage string includes details about how
// JSON logging is only available when BETA logging features are
// enabled, but that's not relevant here because the feature is enabled
Expand All @@ -95,6 +96,17 @@ func AddFlags(fs *pflag.FlagSet) {
f.DefValue = "true"
runtime.Must(f.Value.Set("true"))
}

// Since `--v` (which is the long form of `-v`) isn't the standard in
// our projects (it only exists in cert-manager, webhook, and such),
// let's rename it to the more commong `--log-level`, which appears in
// openshift-routes, csi-driver, trust-manager, and approver-policy.
// More details at:
// https://github.com/jetstack/jetstack-secure/pull/596#issuecomment-2421708181
if f.Name == "v" {
f.Name = "log-level"
f.Shorthand = "v"
}
})
fs.AddFlagSet(&tfs)
}
Expand Down
38 changes: 35 additions & 3 deletions pkg/logs/logs_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@ pflag: help requested
`,
expectStderr: `
Usage of test-logs:
-v, --log-level Level number for the log level verbosity
--logging-format string Sets the log format. Permitted formats: "json", "text". (default "json")
-v, --v Level number for the log level verbosity
--vmodule pattern=N,... comma-separated list of pattern=N settings for file-filtered logging (only works for text log format)
`,
},
Expand All @@ -92,8 +92,23 @@ unknown flag: --foo
expectStderr: `
unknown flag: --foo
Usage of test-logs:
-v, --log-level Level number for the log level verbosity
--logging-format string Sets the log format. Permitted formats: "json", "text". (default "json")
--vmodule pattern=N,... comma-separated list of pattern=N settings for file-filtered logging (only works for text log format)
`,
},
{
name: "v-long-form-not-available",
flags: "--v=3",
expectError: true,
expectStdout: `
unknown flag: --v
`,
expectStderr: `
unknown flag: --v
Usage of test-logs:
-v, --log-level Level number for the log level verbosity
--logging-format string Sets the log format. Permitted formats: "json", "text". (default "json")
-v, --v Level number for the log level verbosity
--vmodule pattern=N,... comma-separated list of pattern=N settings for file-filtered logging (only works for text log format)
`,
},
Expand Down Expand Up @@ -204,7 +219,7 @@ E0000 00:00:00.000000 00000 logs_test.go:000] "Contextual error" err="fake-err
},
{
name: "v-level-3",
flags: "--v=3",
flags: "-v=3",
expectStdout: `
{"ts":0000000000000.000,"caller":"logs/logs.go:000","msg":"log Print","source":"vcert","v":0}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"slog Info","v":0}
Expand All @@ -218,6 +233,23 @@ E0000 00:00:00.000000 00000 logs_test.go:000] "Contextual error" err="fake-err
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"slog Error"}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"klog Error","err":"fake-error"}
{"ts":0000000000000.000,"logger":"foo","caller":"logs/logs_test.go:000","msg":"Contextual error","key":"value","err":"fake-error"}
`,
},
{
name: "v-level-long-form",
flags: "--log-level=0",
expectStdout: `
{"ts":0000000000000.000,"caller":"logs/logs.go:000","msg":"log Print","source":"vcert","v":0}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"slog Info","v":0}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"slog Warn","v":0}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"klog Info","v":0}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"klog Warning","v":0}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"klog InfoS","v":0,"key":"value"}
`,
expectStderr: `
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"slog Error"}
{"ts":0000000000000.000,"caller":"logs/logs_test.go:000","msg":"klog Error","err":"fake-error"}
{"ts":0000000000000.000,"logger":"foo","caller":"logs/logs_test.go:000","msg":"Contextual error","key":"value","err":"fake-error"}
`,
},
{
Expand Down

0 comments on commit 6752d49

Please sign in to comment.