世界都没见过
谈什么世界观

如何在 Linux 中实时查看动态日志的 3 种方法

本文介绍了如何如何有效地使用 tail 命令实时查看动态日志文件。Less 和 Mutitail 命令也派上用场。要监视日志,您需要在日志文件的内容更改时对其进行监视。

您知道如何在 Linux 中查看文件。为此,您可以使用 cat 命令或可能使用 less 命令。

这对具有静态内容的文件很有用。但是日志文件是动态的,它们的内容会随着时间而变化。要监视日志,您需要在日志文件的内容更改时对其进行监视。

如何实时查看日志文件的内容?Tail 是用于此目的的最流行的命令,但也有一些其他工具。我将在本教程中向您展示它们。

方法一:使用tail命令查看日志文件

在tail命令是在现实生活中查看日志文件如此受欢迎,系统管理员使用术语“尾日志文件”。

tail 命令主要用于从末尾显示文件的行,因此称为“tail”。

您可以使用该-f选项来跟踪文件的尾部,这意味着它将继续显示添加到文件中的新行。

tail -f location_of_log_file

如何在 Linux 中实时查看动态日志的 3 种方法

Tail命令 和 grep命令

好吧!所以tail命令通过显示现实生活中的文件变化来解决一个问题。但是,当实时发生如此多的快速变化时,连续观察日志文件并不是很有帮助。

在监视日志文件时,您经常会寻找特定的术语。在大量涌入的新线路中发现这一点几乎是不可能的。

为了使事情更容易,像这样组合 tail 和 grep 命令:

tail -f log_file | grep search_term

如何在 Linux 中实时查看动态日志的 3 种方法

这很好,对吧?让我们把它弄好一点。

我经常发现只有带有搜索词的行并不能显示必要的细节。这就是为什么我使用 grep 命令在带有 option 的搜索词之前和之后显示几行-C

tail -f log_file | grep -C 3 search_term

现在,您将看到与搜索词匹配的行以及它前后的 3 行。这将更好地了解正在发生的事情。

想让它变得更好吗?您可以对多个搜索词进行 grep,甚至使其成为不区分大小写的搜索:

tail -f log_file | grep -C 3 -i - E 'search_term_1|search_term_2'

使用日志旋转跟踪文件

如果您在企业服务器上工作,则日志可能会轮换。这意味着当前日志文件达到一定大小后,将对其进行重命名和压缩。

如何在 Linux 中实时查看动态日志的 3 种方法

如果您实时跟踪日志文件,则会产生问题。默认情况下,tail 命令作用于文件描述符。如果当前日志文件被轮换,tail 命令现在将指向一个归档日志文件,该文件现在不会记录任何更改。

解决方案是按名称跟随日志文件。这样,即使发生日志轮换,尾部也会指向当前的日志文件(因为它的名字永远不会改变)。

tail --follow=name log_file | grep -C 3 -i - E 'search_term_1|search_term_2'

现在好多了。下次跟踪日志文件时,使用这种方式可以更有效地监视它。

Tail 非常适合实时监控日志文件,但是如果您必须同时分析多个日志文件怎么办?答案在下一节。

用tail查看多个日志文件

这应该适用于 Linux 系统。您可以使用 tail 命令同时监视多个日志文件。只需以这种方式提供文件的路径:

tail -f log_file_1 -f log_file_2

您会看到它开始显示实时更改以及它之前的文件名,以便您可以区分不同的日志源。

如何在 Linux 中实时查看动态日志的 3 种方法

方法二:用multitail一次监控多个日志文件

Multitail,顾名思义,用于一次显示多个文件。

有什么大不了的?tail 命令也可以这样做,对吗?

但是 Multitail 比传统的 tail 命令有一些优势。它以拆分视图显示文件,您甚至可以在不同的行和列中显示不同的文件。

请记住,tail 在同一视图中显示所有内容,这变得难以遵循。Multitail 通过提供像screen 命令这样的拆分视图来克服这个困难。

Multitail 不是像 tail 这样的基本命令,您可能必须在使用它之前安装它。

赞(1) 打赏
未经允许不得转载:VPS排行榜 » 如何在 Linux 中实时查看动态日志的 3 种方法

相关推荐

  • 暂无文章

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏