journalctl 系统日志查看工具

什么是 journalctl

journalctl 是一个日志分析工具,从 RHEL 7.0 开始,它就一直陪伴在系统管理员身边。journalctl 内置了日志旋转功能(logrotate),具备丰富的过滤能力,可以查看所有systemd 服务单元的日志,使得运维工作变得更加轻松,非常方便。

journalctl命令使用方法,journalctl设置日志大小

journald 配置文件

配置文件路径:/etc/systemd/journald.conf

日志保存路径:/run/log/journal

1.查看指定优先级(及其以上级别)的日志

日志优先级共有8级

0: emerg

1: alert

2: crit

3: err

4: warning

5: notice

6: info

7: debug

journalctl命令使用方法,journalctl设置日志大小

2.显示指定服务末*行尾**数

journalctl -u kubelet.service -n 20

journalctl命令使用方法,journalctl设置日志大小

3.刷新显示

journalctl -u kubelet.service -f

journalctl命令使用方法,journalctl设置日志大小

4.查看指定时间日志

journalctl -n 10 --since "2024-01-22 09:30"

journalctl命令使用方法,journalctl设置日志大小

5.查看使用的空间

journalctl --disk-usage

journalctl命令使用方法,journalctl设置日志大小

6.清理日志

journalctl --vacuum-time=2d

journalctl --vacuum-size=500M

journalctl命令使用方法,journalctl设置日志大小

7.如果要手工删除日志文件,则在删除前需要先轮转一次journal日志

systemctl kill --kill-who=main --signal=SIGUSR2 systemd-journald.service

systemctl restart systemd-journald.service

journalctl --verify

journalctl命令使用方法,journalctl设置日志大小