You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Move KEP-2845 to implementable
* Add PRR for #2845
* Remove mention of --logtostdout flag in #2845
* KEP #2485: Require splitting stdout/stderr to Json format
* Add pohly as reviewer for KEP 2845
* #2845 Update PRR
* #2845 Add dims as SIG arch approver
Items marked with (R) are required *prior to targeting to a milestone / release*.
38
44
39
-
-[] (R) Enhancement issue in release milestone, which links to KEP dir in [kubernetes/enhancements] (not the initial KEP PR)
40
-
-[] (R) KEP approvers have approved the KEP status as `implementable`
41
-
-[] (R) Design details are appropriately documented
45
+
-[x] (R) Enhancement issue in release milestone, which links to KEP dir in [kubernetes/enhancements] (not the initial KEP PR)
46
+
-[x] (R) KEP approvers have approved the KEP status as `implementable`
47
+
-[x] (R) Design details are appropriately documented
42
48
-[ ] (R) Test plan is in place, giving consideration to SIG Architecture and SIG Testing input (including test refactors)
43
49
-[ ] e2e Tests for all Beta API Operations (endpoints)
44
50
-[ ] (R) Ensure GA e2e tests for meet requirements for [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md)
45
51
-[ ] (R) Minimum Two Week Window for GA e2e tests to prove flake free
46
-
-[] (R) Graduation criteria is in place
52
+
-[x] (R) Graduation criteria is in place
47
53
-[ ] (R) [all GA Endpoints](https://github.com/kubernetes/community/pull/1806) must be hit by [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md)
48
54
-[ ] (R) Production readiness review completed
49
55
-[ ] (R) Production readiness review approved
@@ -114,16 +120,14 @@ best practices.
114
120
### Non-Goals
115
121
116
122
* Change klog output format
123
+
* Remove flags from klog
117
124
118
125
## Proposal
119
126
120
127
I propose to remove klog specific feature flags in Kubernetes core components
121
-
(kube-apiserver, kube-scheduler, kube-controller-manager, kubelet) and set them
122
-
to agreed good defaults. From klog flags we would remove all flags besides "-v"
123
-
and "-vmodule". With removal of flags to route logs based on type we want to
124
-
change the default routing that will work as better default. Changing the
125
-
defaults will be done in via multi release process, that will introduce some
126
-
temporary flags that will be removed at the same time as other klog flags.
128
+
(kube-apiserver, kube-scheduler, kube-controller-manager, kubelet) and leave
129
+
them with defaults. From klog flags we would remove all flags besides "-v"
130
+
and "-vmodule".
127
131
128
132
### Removed klog flags
129
133
@@ -159,46 +163,27 @@ This leaves that two flags that should be implemented by all log formats
159
163
* --vmodule - control log verbosity of Info logs on per file level
160
164
161
165
Those flags were chosen as they have effect of which logs are written,
162
-
directly impacting log volume and component performance.
166
+
directly impacting log volume and component performance. Flag `-v` will be
167
+
supported by all logging formats, however `-vmodule` will be optional for non
168
+
default "text" format.
163
169
164
170
### Logging defaults
165
171
166
172
With removal of configuration alternatives we need to make sure that defaults
167
173
make sense. List of logging features implemented by klog and proposed actions:
168
-
* Routing logs based on type/verbosity - Should be reconsidered.
174
+
* Routing logs based on type/verbosity - Supported by alternative logging formats.
169
175
* Writing logs to file - Feature removed.
170
176
* Log file rotation based on file size - Feature removed.
171
177
* Configuration of log headers - Use the current defaults.
172
178
* Adding stacktrace - Feature removed.
173
179
174
-
For log routing I propose to adopt UNIX convention of writing info logs to
175
-
stdout and errors to stderr. For log headers I propose to use the current
176
-
default.
177
-
178
-
#### Split stdout and stderr
179
-
180
-
As logs should be treated as event streams I would propose that we separate two
181
-
main streams "info" and "error" based on log method called. As error logs should
182
-
usually be treated with higher priority, having two streams prevents single
0 commit comments