diff --git a/go.mod b/go.mod index 1f9c7c7fb..a5033c5d8 100644 --- a/go.mod +++ b/go.mod @@ -26,7 +26,7 @@ require ( k8s.io/api v0.32.10 k8s.io/apimachinery v0.32.10 k8s.io/client-go v0.32.10 - k8s.io/klog/v2 v2.130.1 + k8s.io/klog/v2 v2.140.0 ) require ( diff --git a/go.sum b/go.sum index f9b076689..af96f2b56 100644 --- a/go.sum +++ b/go.sum @@ -432,8 +432,8 @@ k8s.io/apimachinery v0.32.10 h1:SAg2kUPLYRcBJQj66oniP1BnXSqw+l1GvJFsJlBmVvQ= k8s.io/apimachinery v0.32.10/go.mod h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE= k8s.io/client-go v0.32.10 h1:MFmIjsKtcnn7mStjrJG1ZW2WzLsKKn6ZtL9hHM/W0xU= k8s.io/client-go v0.32.10/go.mod h1:qJy/Ws3zSwnu/nD75D+/of1uxbwWHxrYT5P3FuobVLI= -k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= -k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/klog/v2 v2.140.0 h1:Tf+J3AH7xnUzZyVVXhTgGhEKnFqye14aadWv7bzXdzc= +k8s.io/klog/v2 v2.140.0/go.mod h1:o+/RWfJ6PwpnFn7OyAG3QnO47BFsymfEfrz6XyYSSp0= k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f h1:GA7//TjRY9yWGy1poLzYYJJ4JRdzg3+O6e8I+e+8T5Y= k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f/go.mod h1:R/HEjbvWI0qdfb8viZUeVZm0X6IZnxAydC7YU42CMw4= k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= diff --git a/main.go b/main.go index 61882a1eb..c7fca8209 100644 --- a/main.go +++ b/main.go @@ -147,6 +147,17 @@ func init() { os.Exit(1) } + // Opt into the fixed klog behavior so the --stderrthreshold flag is honored + // even when --logtostderr is enabled. See https://github.com/kubernetes/klog/issues/432 + if err := flag.Set("legacy_stderr_threshold_behavior", "false"); err != nil { + log.Error("Can't set the legacy_stderr_threshold_behavior flag", err) + os.Exit(1) + } + if err := flag.Set("stderrthreshold", "INFO"); err != nil { + log.Error("Can't set the stderrthreshold flag", err) + os.Exit(1) + } + // Only copy the non file logging options from klog copyFlag("v") copyFlag("vmodule")