Val*_*kov 10 logging datetime dump kubernetes
是否可以获取指定时间范围内的 Kubernetes 日志?
我现在能做的就是使用 cmd 转储单个 pod 的最后一小时日志kubectl logs > dump.log。
但出于调试原因,有必要获取上周的日志。我在 Kubernetes 日志中找不到任何执行此操作的功能。
唯一的想法是附加一些外部服务(例如 Kibana)来收集日志,但也许内置的 Kubernetes 补救措施允许这样做?
谢谢。
goh*_*m'c 13
...the last-hour log for the single pod
要检索最近 1 小时的日志,您可以执行此操作kubectl logs <pod> --since=1h。从 kubectl 帮助断言更多选项:
--since=0s:仅返回比相对持续时间(例如 5s、2m 或 3h)更新的日志。默认为所有日志。只能使用“since-time”/“since”之一。
--since-time='':仅返回特定日期之后的日志 (RFC3339)。默认为所有日志。只能使用“since-time”/“since”之一。
--tail=-1:要显示的最近日志文件的行。没有选择器时默认为 -1,如果提供了选择器,则显示所有日志行,否则为 10。
小智 12
AWK是 Unix/Linux 系统中用于此类逻辑运算的出色工具
因此,要显示两个时间范围之间的日志(例如:上午 10 点到上午 11 点):
--since-time和awkkubectl logs pod_name --since-time=2022-04-30T10:00:00Z | awk '$0 < "2022-04-30 11:00:00"'
Run Code Online (Sandbox Code Playgroud)
awkkubectl logs pod_name | awk '$0 > "2022-04-30 10:00:00"' | awk '$0 < "2022-04-30 11:00:00"'
Run Code Online (Sandbox Code Playgroud)
注意:请根据日志输出在 awk 命令中使用 date_time 格式。
| 归档时间: |
|
| 查看次数: |
51239 次 |
| 最近记录: |