一个计算机技术爱好者与学习者

0%

shell命令之journalctl

1. journalctl命令简介

journalctl是systemd套件的一个命令,是一个系统日志管理器,它允许我们在Linux系统上检查和查看系统日志消息。它提供了一种简单而灵活的方式来查看和分析系统日志,包括内核、系统服务和应用程序日志。

参考文档:

2. journalctl基本用法

2.1. 查看帮助

1
2
journalctl --help
man journalctl

2.2. 查看所有日志

查看系统的全部日志信息,从最早的日志条目到最新的日志条目。

1
journalctl

将日志条目的内容以“cat”的形式(原始文本)显示,而不是默认的格式化展示。
使用原始文本格式可能会使输出看起来不太结构化,但它能够显示更详细的信息,对于某些问题的追踪会更有帮助。

1
journalctl -o cat

2.3. 查看最新的日志

直接跳转到最新的日志条目,从日志的末尾开始浏览。

1
journalctl -e

实时跟踪日志消息

1
journalctl -f

2.4. 翻页

journalctl查看日志时翻页:fn + 上下

3. journalctl高级用法

3.1. 按程序(单元)过滤

使用 -u 选项,后接单元名称(如服务名称),可以过滤出特定单元产生的日志。

查看特定程序日志

1
journalctl -xeu kubelet

逆序查看程序日志

1
journalctl -xeu kubelet -r

逆序查看程序日志,并进行二次过滤

1
journalctl -xeu kubelet -r | grep -v "Search Line limits were exceeded" | head -n 100

3.2. 按时间过滤

使用 –since 和 –until 选项,可以限定日志显示的时间范围。

查看特定时间范围内的日志消息

1
2
3
journalctl --since "1 hour ago"

journalctl --since "YYYY-MM-DD HH:MM:SS" --until "YYYY-MM-DD HH:MM:SS"

3.3. 按优先级过滤

使用 -p 选项,后接优先级数字或关键词,可以过滤出指定优先级的日志。

查看所有错误日志

1
journalctl -p err

3.4. 按关键词过滤

使用 -t 选项,后接关键词,可以过滤出包含指定关键词的日志条目。

查看包含 “error” 的日志

1
journalctl -t error

3.5. 查看引导日志

查看引导日志

1
journalctl -b

查看详细引导日志

1
journalctl -xb

3.6. 查看内核日志

查看内核日志

1
journalctl -k

3.7. 清理日志

清理2天前的日志

1
journalctl --vacuum-time=2d

清理超过500M的日志

1
journalctl --vacuum-size=500M
  • 本文作者: 好好学习的郝
  • 原文链接: https://www.voidking.com/dev-shell-journalctl/
  • 版权声明: 本文采用 BY-NC-SA 许可协议,转载请注明出处!源站会即时更新知识点并修正错误,欢迎访问~
  • 微信公众号同步更新,欢迎关注~