1KUBERNETES(1)(kubernetes) KUBERNETES(1)(kubernetes)
2
3
4
5Eric Paris Jan 2015
6
7
9 kubectl logs - Print the logs for a container in a pod
10
11
12
14 kubectl logs [OPTIONS]
15
16
17
19 Print the logs for a container in a pod or specified resource. If the
20 pod has only one container, the container name is optional.
21
22
23
25 --all-containers=false Get all containers' logs in the pod(s).
26
27
28 -c, --container="" Print the logs of this container
29
30
31 -f, --follow=false Specify if the logs should be streamed.
32
33
34 --ignore-errors=false If watching / following pod logs, allow for
35 any errors that occur to be non-fatal
36
37
38 --insecure-skip-tls-verify-backend=false Skip verifying the iden‐
39 tity of the kubelet that logs are requested from. In theory, an at‐
40 tacker could provide invalid log content back. You might want to use
41 this if your kubelet serving certificates have expired.
42
43
44 --limit-bytes=0 Maximum bytes of logs to return. Defaults to no
45 limit.
46
47
48 --max-log-requests=5 Specify maximum number of concurrent logs to
49 follow when using by a selector. Defaults to 5.
50
51
52 --pod-running-timeout=20s The length of time (like 5s, 2m, or 3h,
53 higher than zero) to wait until at least one pod is running
54
55
56 --prefix=false Prefix each log line with the log source (pod name
57 and container name)
58
59
60 -p, --previous=false If true, print the logs for the previous in‐
61 stance of the container in a pod if it exists.
62
63
64 -l, --selector="" Selector (label query) to filter on.
65
66
67 --since=0s Only return logs newer than a relative duration like
68 5s, 2m, or 3h. Defaults to all logs. Only one of since-time / since may
69 be used.
70
71
72 --since-time="" Only return logs after a specific date (RFC3339).
73 Defaults to all logs. Only one of since-time / since may be used.
74
75
76 --tail=-1 Lines of recent log file to display. Defaults to -1 with
77 no selector, showing all log lines otherwise 10, if a selector is pro‐
78 vided.
79
80
81 --timestamps=false Include timestamps on each line in the log out‐
82 put
83
84
85
87 --add-dir-header=false If true, adds the file directory to the
88 header of the log messages
89
90
91 --alsologtostderr=false log to standard error as well as files
92
93
94 --application-metrics-count-limit=100 Max number of application
95 metrics to store (per container)
96
97
98 --as="" Username to impersonate for the operation
99
100
101 --as-group=[] Group to impersonate for the operation, this flag
102 can be repeated to specify multiple groups.
103
104
105 --azure-container-registry-config="" Path to the file containing
106 Azure container registry configuration information.
107
108
109 --boot-id-file="/proc/sys/kernel/random/boot_id" Comma-separated
110 list of files to check for boot-id. Use the first one that exists.
111
112
113 --cache-dir="/builddir/.kube/cache" Default cache directory
114
115
116 --certificate-authority="" Path to a cert file for the certificate
117 authority
118
119
120 --client-certificate="" Path to a client certificate file for TLS
121
122
123 --client-key="" Path to a client key file for TLS
124
125
126 --cloud-provider-gce-l7lb-src-cidrs=130.211.0.0/22,35.191.0.0/16
127 CIDRs opened in GCE firewall for L7 LB traffic proxy health
128 checks
129
130
131 --cloud-provider-gce-lb-src-cidrs=130.211.0.0/22,209.85.152.0/22,209.85.204.0/22,35.191.0.0/16
132 CIDRs opened in GCE firewall for L4 LB traffic proxy health
133 checks
134
135
136 --cluster="" The name of the kubeconfig cluster to use
137
138
139 --container-hints="/etc/cadvisor/container_hints.json" location of
140 the container hints file
141
142
143 --containerd="/run/containerd/containerd.sock" containerd endpoint
144
145
146 --containerd-namespace="k8s.io" containerd namespace
147
148
149 --context="" The name of the kubeconfig context to use
150
151
152 --default-not-ready-toleration-seconds=300 Indicates the tolera‐
153 tionSeconds of the toleration for notReady:NoExecute that is added by
154 default to every pod that does not already have such a toleration.
155
156
157 --default-unreachable-toleration-seconds=300 Indicates the tolera‐
158 tionSeconds of the toleration for unreachable:NoExecute that is added
159 by default to every pod that does not already have such a toleration.
160
161
162 --disable-root-cgroup-stats=false Disable collecting root Cgroup
163 stats
164
165
166 --docker="unix:///var/run/docker.sock" docker endpoint
167
168
169 --docker-env-metadata-whitelist="" a comma-separated list of envi‐
170 ronment variable keys matched with specified prefix that needs to be
171 collected for docker containers
172
173
174 --docker-only=false Only report docker containers in addition to
175 root stats
176
177
178 --docker-root="/var/lib/docker" DEPRECATED: docker root is read
179 from docker info (this is a fallback, default: /var/lib/docker)
180
181
182 --docker-tls=false use TLS to connect to docker
183
184
185 --docker-tls-ca="ca.pem" path to trusted CA
186
187
188 --docker-tls-cert="cert.pem" path to client certificate
189
190
191 --docker-tls-key="key.pem" path to private key
192
193
194 --enable-load-reader=false Whether to enable cpu load reader
195
196
197 --event-storage-age-limit="default=0" Max length of time for which
198 to store events (per type). Value is a comma separated list of key val‐
199 ues, where the keys are event types (e.g.: creation, oom) or "default"
200 and the value is a duration. Default is applied to all non-specified
201 event types
202
203
204 --event-storage-event-limit="default=0" Max number of events to
205 store (per type). Value is a comma separated list of key values, where
206 the keys are event types (e.g.: creation, oom) or "default" and the
207 value is an integer. Default is applied to all non-specified event
208 types
209
210
211 --global-housekeeping-interval=1m0s Interval between global house‐
212 keepings
213
214
215 --housekeeping-interval=10s Interval between container housekeep‐
216 ings
217
218
219 --insecure-skip-tls-verify=false If true, the server's certificate
220 will not be checked for validity. This will make your HTTPS connections
221 insecure
222
223
224 --kubeconfig="" Path to the kubeconfig file to use for CLI re‐
225 quests.
226
227
228 --log-backtrace-at=:0 when logging hits line file:N, emit a stack
229 trace
230
231
232 --log-cadvisor-usage=false Whether to log the usage of the cAdvi‐
233 sor container
234
235
236 --log-dir="" If non-empty, write log files in this directory
237
238
239 --log-file="" If non-empty, use this log file
240
241
242 --log-file-max-size=1800 Defines the maximum size a log file can
243 grow to. Unit is megabytes. If the value is 0, the maximum file size is
244 unlimited.
245
246
247 --log-flush-frequency=5s Maximum number of seconds between log
248 flushes
249
250
251 --logtostderr=true log to standard error instead of files
252
253
254 --machine-id-file="/etc/machine-id,/var/lib/dbus/machine-id"
255 Comma-separated list of files to check for machine-id. Use the
256 first one that exists.
257
258
259 --match-server-version=false Require server version to match
260 client version
261
262
263 -n, --namespace="" If present, the namespace scope for this CLI
264 request
265
266
267 --one-output=false If true, only write logs to their native sever‐
268 ity level (vs also writing to each lower severity level)
269
270
271 --password="" Password for basic authentication to the API server
272
273
274 --profile="none" Name of profile to capture. One of
275 (none|cpu|heap|goroutine|threadcreate|block|mutex)
276
277
278 --profile-output="profile.pprof" Name of the file to write the
279 profile to
280
281
282 --referenced-reset-interval=0 Reset interval for referenced bytes
283 (container_referenced_bytes metric), number of measurement cycles after
284 which referenced bytes are cleared, if set to 0 referenced bytes are
285 never cleared (default: 0)
286
287
288 --request-timeout="0" The length of time to wait before giving up
289 on a single server request. Non-zero values should contain a corre‐
290 sponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't time‐
291 out requests.
292
293
294 -s, --server="" The address and port of the Kubernetes API server
295
296
297 --skip-headers=false If true, avoid header prefixes in the log
298 messages
299
300
301 --skip-log-headers=false If true, avoid headers when opening log
302 files
303
304
305 --stderrthreshold=2 logs at or above this threshold go to stderr
306
307
308 --storage-driver-buffer-duration=1m0s Writes in the storage driver
309 will be buffered for this duration, and committed to the non memory
310 backends as a single transaction
311
312
313 --storage-driver-db="cadvisor" database name
314
315
316 --storage-driver-host="localhost:8086" database host:port
317
318
319 --storage-driver-password="root" database password
320
321
322 --storage-driver-secure=false use secure connection with database
323
324
325 --storage-driver-table="stats" table name
326
327
328 --storage-driver-user="root" database username
329
330
331 --tls-server-name="" Server name to use for server certificate
332 validation. If it is not provided, the hostname used to contact the
333 server is used
334
335
336 --token="" Bearer token for authentication to the API server
337
338
339 --update-machine-info-interval=5m0s Interval between machine info
340 updates.
341
342
343 --user="" The name of the kubeconfig user to use
344
345
346 --username="" Username for basic authentication to the API server
347
348
349 -v, --v=0 number for the log level verbosity
350
351
352 --version=false Print version information and quit
353
354
355 --vmodule= comma-separated list of pattern=N settings for
356 file-filtered logging
357
358
359 --warnings-as-errors=false Treat warnings received from the server
360 as errors and exit with a non-zero exit code
361
362
363
365 # Return snapshot logs from pod nginx with only one container
366 kubectl logs nginx
367
368 # Return snapshot logs from pod nginx with multi containers
369 kubectl logs nginx --all-containers=true
370
371 # Return snapshot logs from all containers in pods defined by label app=nginx
372 kubectl logs -lapp=nginx --all-containers=true
373
374 # Return snapshot of previous terminated ruby container logs from pod web-1
375 kubectl logs -p -c ruby web-1
376
377 # Begin streaming the logs of the ruby container in pod web-1
378 kubectl logs -f -c ruby web-1
379
380 # Begin streaming the logs from all containers in pods defined by label app=nginx
381 kubectl logs -f -lapp=nginx --all-containers=true
382
383 # Display only the most recent 20 lines of output in pod nginx
384 kubectl logs --tail=20 nginx
385
386 # Show all logs from pod nginx written in the last hour
387 kubectl logs --since=1h nginx
388
389 # Show logs from a kubelet with an expired serving certificate
390 kubectl logs --insecure-skip-tls-verify-backend nginx
391
392 # Return snapshot logs from first container of a job named hello
393 kubectl logs job/hello
394
395 # Return snapshot logs from container nginx-1 of a deployment named nginx
396 kubectl logs deployment/nginx -c nginx-1
397
398
399
400
402 kubectl(1),
403
404
405
407 January 2015, Originally compiled by Eric Paris (eparis at redhat dot
408 com) based on the kubernetes source material, but hopefully they have
409 been automatically generated since!
410
411
412
413Manuals User KUBERNETES(1)(kubernetes)