【Linux】4种实时监控日志文件的方法

本文介绍了四种在Linux环境下实时监控日志文件的有效方法,包括使用tail命令、Multitail命令、lnav命令以及less命令。这些方法不仅能够帮助用户实时查看日志更新,还能同时监控多个日志文件,适用于各种场景。

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

Linux下4种实时监控日志文件的方法

1. tail Command – Monitor Logs in Real Time

tail命令是实时显示日志的最常用的方法,由两个版本:
第一个例子是为tail命令加上-f的参数。即

$ sudo tail -f /var/log/apache2/access.log

第二个例子就是tailf命令。它本身内建了-f参数,因此无需再次指定:

$ sudo tailf /var/log/apache2/access.log

通常Linux服务器上的日志都是轮转日志,这种情况下,需要用-F参数。
tail -F 会监控是否创建了新日志(所谓新日志指的是同一个名字,但是 fd 不一样的日志文件),并且会转而显示新日志的内容,而不是老文件的内容。即:

$ sudo tail -F /var/log/apache2/access.log

然而,默认情况下 tail 命令只会显示文件最后 10 行的内容。如果只想在实时模式下查看最后两行的内容,那么可以连用 -n 和 -f 参数,如下这样:

$ sudo tail -n2 -f /var/log/apache2/access.log
2. Multitail Command – Monitor Multiple Log Files in Real Time

Multitail Command,从名字中就能看出它可以实时监控多个日志,Multitail 还能让你前后翻阅被监控的文件。

使用下面命令可以在基于 Debian 或 RedHat 的系统中安装 Mulitail。

$ sudo apt install multitail   [On Debian & Ubuntu]
$ sudo yum install multitail   [On RedHat & CentOS]
$ sudo dnf install multitail   [On Fedora 22+ version]

下面例子演示了如何同时显示两个日志文件。

$ sudo multitail /var/log/apache2/access.log /var/log/apache2/error.log
3. lnav Command – Monitor Multiple Log Files in Real Time

Lnav 也能实时监控多个文件。使用下面命令可以在基于 Debian 或 RedHat 的系统中安装 Lnav。

$ sudo apt install lnav   [On Debian & Ubuntu]
$ sudo yum install lnav   [On RedHat & CentOS]
$ sudo dnf install lnav   [On Fedora 22+ version]

使用 Lnav 同时查看两个日志的方法如下:

$ sudo lnav /var/log/apache2/access.log /var/log/apache2/error.log
4. less Command – Display Real Time Output of Log Files

最后你可以用 less 命令查看日志文件,然后按下 Shift+F 也能实时查看日志内容。
跟 tail 一样, 在 less 中按下 Shift+F 会追踪文件末尾的内容。也可以在调用 less 命令时就加上 +F 参数。

sudo less +F  /var/log/apache2/access.log
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

镰刀韭菜

看在我不断努力的份上,支持我吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值