Linux下4种实时监控日志文件的方法,总有一种适合你

系统 Linux
在 Linux 下如何才能实时查看日志内容呢?有很多工具可以帮助我们在文件持续修改的同时输出文件内容,最常用的莫过于 tail 命令 了。

[[282100]]

在 Linux 下如何才能实时查看日志内容呢?有很多工具可以帮助我们在文件持续修改的同时输出文件内容,最常用的莫过于 tail 命令 了。

1. tail Command – Monitor Logs in Real Time

如前所述, tail 命令是实时显示日志的最常用的方法。不过该命令有两个版本,如下所示。

第一个例子是为 tail 命令加上 -f 参数。

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

 

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

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

 

通常 Linux 服务器上的日志都是轮转日志。这种情况下,你需要用 -F 参数。

tail -F 会监控是否创建了新日志(所谓新日志指的是同一个名字,但是 fd 不一样的日志文件),并且会转而显示新日志的内容,而不是老文件的内容。

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

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

  1. $ 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。

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

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

  1. $ sudo multitail /var/log/apache2/access.log /var/log/apache2/error.log 

 

3. lnav Command – Monitor Multiple Log Files in Real Time

另一个类似 Multitail 的命令是 Lnav,Lnav 也能实时监控多个文件。

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

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

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

  1. $ 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 参数。

  1. sudo less +F  /var/log/apache2/access.log 

 

下面是其他一些关于日志监控与管理的文章,值得一读。

  • Manage Files Effectively using head, tail and cat Commands in Linux
  • How to Setup and Manage Log Rotation Using Logrotate in Linux
  • Petiti – An Open Source Log Analysis Tool for Linux SysAdmins
  • How to Query Audit Logs Using ‘ausearch’ Tool on CentOS/RHEL
  • Manage Log Messages Under Systemd Using Journalctl {Comprehensive Guide}

 

责任编辑:武晓燕 来源: Linux云计算网络
相关推荐

2021-12-31 16:16:04

JavaScript数组代码

2020-07-10 10:48:51

编程语言JavaPython

2015-01-26 15:58:02

MDM应用指南

2010-02-01 08:33:46

2022-08-18 09:38:02

Spring跨域

2022-02-14 10:30:37

Java方式框架

2009-02-26 10:29:00

2020-12-10 09:48:15

鸿蒙Linux开发

2020-03-04 17:03:10

数据分析思维说明

2017-02-20 09:00:49

2009-06-17 12:01:21

Linux

2009-06-17 09:05:05

Linux隐藏网络链接命令

2019-05-30 08:43:45

JavaScript富文本编辑器编辑器

2018-01-05 08:53:32

LinuxUbuntu发行版

2020-12-09 10:15:34

Pythonweb代码

2020-12-23 10:10:23

Pythonweb代码

2022-07-07 10:33:27

Python姿势代码

2022-06-22 09:44:41

Python文件代码

2020-07-06 10:29:21

Linux系统数据

2021-01-27 09:41:41

Web安全攻击黑客
点赞
收藏

51CTO技术栈公众号