linux journalctl使用详解

本文详细介绍journalctl命令的使用方法,包括查询systemd管理的Unit日志、按时间筛选日志、查看特定用户或进程的日志、设置日志输出格式等高级功能,帮助读者掌握高效日志查询技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.概述

​ journalctl 用来查询 systemd-journald 服务收集到的日志。systemd-journald 服务是 systemd init 系统提供的收集系统日志的服务。journalctl通常用来查询systemd管理的Unit的日志信息。

2.使用方法

$ man journalctl

$ journalctl --help
在这里插入图片描述

常用方法

$ journalctl

不带任何选项时,默认输出所有的日志记录

$ journalctl -n [num]

显示最后num行的日志,如果省略num,则默认显示最后10行

$ journalctl -f

实时滚动显示最新日志

$ journalctl -u <unit_name>

显示指定unit的日志,unit_name为具体的unit名称, 如果想合并显示多个unit日志可以用多个-u <unit_name>

$ journalctl -o

设置日志输出的格式,mode的值为(short, short-iso,short-precise, short-monotonic, verbose,export, json, json-pretty, json-sse, ca)

$ journalctl --no-pager

日志默认分页输出,–no-pager改为正常的标准输出

$ journalctl --since

显示从某个时间点之后的数据

journalctl --since=“2020-08-31 10:00:00” #显示2020年8月31日10点以后的数据

journalctl --since “10 min ago” #显示最近10分钟内的日志

journalctl --since today/yesterday #显示今天/昨天以来的日志

journalctl --since “2020-08-31 10:00:00” --until “2020-08-31 11:00:00” #显示某个时间段内的日志(2020-08-31 10点-11点)

#until也可以是以下用法:

–until “1 hour ago”

–until now

$ journalctl -k

查看系统内核日志

匹配

$ journalctl -o json -n 1

可以看到最新的一条日志的json输出格式,我们可以根据json的key和value来匹配对应的日志
在这里插入图片描述

$ journalctl _PID=28655

获取指定进程的日志

$ journalctl _UID=33 --since=today

查看指定用户今天的日志

$ journalctl _SYSTEMD_UNIT=cron.service PRIORITY=6

通过系统unit和优先级匹配

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

日志优先级共有8级

0: emerg

1: alert

2: crit

3: err

4: warning

5: notice

6: info

7: debug

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值