# 以flow形式查看日志 实时滚动
$ journalctl -f
# 查看内核日志
$ journalctl -k
# 查看指定服务日志 实时滚动最新日志
$ journalctl -u docker.serivce
# 查看指定日期日志
$ journalctl --since="2022-03-04 10:00:00" -u docker
$ journalctl --since="2022-03-04 10:00:00" --until="2022-03-04 11:00:00" -u docker
# –until “1 hour ago” / –until now
$ journalctl --since “10 min ago” #显示最近10分钟内的日志
$ journalctl --since today/yesterday #显示今天/昨天以来的日志
# 查看指定级别日志
$ journalctl -p 3 -u docker.service
操作系统提供了从0 (emerg) 到 7 (debug) 一共7个级别的日志,7个级别的含义为:
0: emerg
1: alert
2: crit
3: err
4: warning
5: notice
6: info
7: debug
# 查看日志占用的磁盘空间
$ journalctl --disk-usage
# 设置日志占用的空间
$ journalctl --vacuum-size=500M
# 设置日志保存的时间
$ journalctl --vacuum-time=1month
# 检查日志文件一致性
$ journalctl –-verify
# 显示最后num行的日志,如果省略num,则默认显示最后10行
$ journalctl -n [num]
# 设置日志输出格式
$ journalctl -o
格式有:
mode的值为(short, short-iso,short-precise, short-monotonic, verbose,export, json, json-pretty, json-sse, ca)
# 正常标准输出 日志默认分页输出,–no-pager改为正常的标准输出
$ journalctl --no-pager
# 获取指定进程号的日志
$ journalctl _PID=28655
# 查看指定用户的日志
$ journalctl _UID=33 --since=today
# 通过系统优先级匹配
$ journalctl _SYSTEMD_UNIT=cron.service PRIORITY=6
# 查看帮助文档
$ man journalctl
$ journalctl -h