当前位置:首页 > 话题广场 > 攻略专题 > 游戏问答

还在用 tail、more 查看日志?你需要学习点新工具了

基于消息的时间戳,lnav将多个日志文件合并到一个视图中,从而避免打开多个窗口。

左边的颜色栏帮助显示消息所属的文件。警告和错误的数量以(黄色和红色)高亮显示,因此我们能够很轻易地看到问题出现在哪里。它会自动加载新的日志行。 -- Magesh Maruthamuthu
本文导航
  • -如何在 Linux 中安装 lnav …… 34%

  • -不带参数运行 lnav …… 56%

  • -使用 lnav 查看特定日志文件 …… 60%

  • -用 lnav 查看多个日志文件 …… 65%

  • -使用 lnav 查看压缩的日志文件 …… 75%

  • -直方图视图 …… 79%

  • -查看日志解析器结果 …… 82%

  • -语法高亮 …… 85%

  • -Tab 补全 …… 89%

编译自:

作者: Magesh Maruthamuthu

译者: ictlyh

服务器日志是一个由服务器创建并经常更新、用于抓取特定服务和应用的所有活动信息的日志文件。当你的应用或者服务出现问题时这个文件就会非常有用。从日志文件中你可以获取所有关于该问题的信息,例如基于警告或者错误信息它什么时候开始表现不正常。

LNAV[1](Log file Navigator)是 Linux 下一个基于控制台的高级日志文件查看器。它和其它文件查看器,例如 cat、more、tail 等,完成相同的任务,但有很多普通文件查看器没有的增强功能(尤其是它自带多种颜色和易于阅读的格式)。

它能在解压多个压缩日志文件(zip、gzip、bzip)的同时把它们合并到一起进行导航。基于消息的时间戳,lnav 能把多个日志文件合并到一个视图(Single Log Review),从而避免打开多个窗口。左边的颜色栏帮助显示消息所属的文件。

警告和错误的数量以(黄色和红色)高亮显示,因此我们能够很轻易地看到问题出现在哪里。它会自动加载新的日志行。

它按照消息时间戳排序显示所有文件的日志消息。顶部和底部的状态栏会告诉你位于哪个日志文件。如果你想按特定的模式查找,只需要在搜索弹窗中输入就会即时显示。

内建的日志消息解析器会自动从每一行中发现和提取详细信息。

当你用一个普通文件查看器打开一个日志文件时,它会用纯文本格式显示所有信息(如果用更直白的话说的话:纯白——黑底白字),这样很难去发现和理解哪里有警告或错误信息。为了克服这种情况,快速找到警告和错误信息来解决问题, lnav 是一个入手可用的更好的解决方案。

大部分常见的 Linux 日志文件都放在 /var/log/。

lnav 自动检测以下日志格式

  • Common Web Access Log format(普通 web 访问日志格式)

  • CUPS page_log

  • Syslog

  • Glog

  • VMware ESXi/vCenter 日志

  • d

  • uwsgi

  • “Generic” – 以时间戳开始的任何消息

  • Strace

  • sudo

  • gzib & bizp

lnav 高级功能

  • 单一日志视图 - 基于消息时间戳,所有日志文件内容都会被合并到一个单一视图

  • 自动日志格式检测 - lnav 支持大部分日志格式

  • 过滤器 - 能进行基于正则表达式的过滤

  • 时间线视图

  • 适宜打印视图(Pretty-Print)

  • 使用 SQL 查询日志

  • 自动数据抽取

  • 实时操作

  • 语法高亮

  • Tab 补全

  • 当你查看相同文件集时可以自动保存和恢复会话信息。

  • Headless 模式

如何在 Linux 中安装 lnav

大部分发行版(debian、Ubuntu、Mint、Fedora、suse、openSUSE、Arch Linux、Manjaro、Mageia 等等)默认都有 lnav 软件包,在软件包管理器的帮助下,我们可以很轻易地从发行版官方仓库中安装它。对于 CentOS/RHEL 我们需要启用 EPEL 仓库[2]。

[在 Debian/Ubuntu/LinuxMint 上安装 lnav]

$ sudo apt-get install lnav

[在 RHEL/CentOS 上安装 lnav]

$ sudo yum install lnav

[在 Fedora 上安装 lnav]

$ sudo dnf install lnav

[在 openSUSE 上安装 lnav]

$ sudo zypper install lnav

[在 Mageia 上安装 lnav]

$ sudo urpmi lnav

[在基于 Arch Linux 的系统上安装 lnav]

$ yaourt -S lnav

如果你的发行版没有 lnav 软件包,别担心,开发者提供了 .rpm 和 .deb 安装包,因此我们可以轻易安装。确保你从 开发者 github 页面[3] 下载最新版本的安装包。

[在 Debian/Ubuntu/LinuxMint 上安装 lnav]

$ sudo wget

$ sudo dpkg -i lnav_0.8.1_amd64.deb

[在 RHEL/CentOS 上安装 lnav]

$ sudo yum install

[在 Fedora 上安装 lnav]

$ sudo dnf install

[在 openSUSE 上安装 lnav]

$ sudo zypper install

[在 Mageia 上安装 lnav]

$ sudo rpm -ivh

不带参数运行 lnav

默认情况下你不带参数运行 lnav 时它会打开 syslog 文件。

# lnav

使用 lnav 查看特定日志文件

要用 lnav 查看特定的日志文件,在 lnav 命令后面添加日志文件路径。例如我们想看 /var/log/d 日志文件。

# lnav /var/log/d

用 lnav 查看多个日志文件

要用 lnav 查看多个日志文件,在 lnav 命令后面逐个添加日志文件路径,用一个空格隔开。例如我们想查看 /var/log/d 和 /var/log 日志文件。

左边的颜色栏帮助显示消息所属的文件。另外顶部状态栏还会显示当前日志文件的名称。为了显示多个日志文件,大部分应用经常会打开多个窗口、或者在窗口中水平或竖直切分,但 lnav 使用不同的方式(它基于日期组合在同一个窗口显示多个日志文件)。

# lnav /var/log/d /var/log

使用 lnav 查看压缩的日志文件

要查看并同时解压被压缩的日志文件(zip、gzip、bzip),在 lnav 命令后面添加 -r 选项。

# lnav -r /var/log

直方图视图

首先运行 lnav 然后按 i 键切换到/出直方图视图。

查看日志解析器结果

首先运行 lnav 然后按 p 键打开显示日志解析器结果。

语法高亮

你可以搜索任何给定的字符串,它会在屏幕上高亮显示。首先运行 lnav 然后按 / 键并输入你想查找的字符串。为了测试,我搜索字符串 Default,看下面的截图。

Tab 补全

命令窗口支持大部分操作的 tab 补全。例如,在进行搜索时,你可以使用 tab 补全屏幕上显示的单词,而不需要复制粘贴。为了测试,我搜索字符串 /var/log/Xorg,看下面的截图。


via:

作者:Magesh Maruthamuthu[4] 译者:ictlyh 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

  • [1]: LNAV -

  • [2]: EPEL 仓库 -

  • [3]: 开发者 github 页面 -

  • [4]: Magesh Maruthamuthu -

1.《还在用 tail、more 查看日志?你需要学习点新工具了》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《还在用 tail、more 查看日志?你需要学习点新工具了》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/gl/2215046.html

上一篇

40种CAD常见问题及解决方法,请学习和收藏备用

下一篇

03版怎么插入指定宏的按扭控件?我来告诉你答案VBA中选项按钮(Option Buttons)的应用

.cat文件如何打开?我来告诉你答案还在用 tail、more 查看日志?你需要学习点新工具了

.cat文件如何打开?我来告诉你答案还在用 tail、more 查看日志?你需要学习点新工具了

.cat文件如何打开相关介绍,基于消息的时间戳,lnav 能把多个日志文件合并到一个视图,从而避免打开多个窗口。左边的颜色栏帮助显示消息所属的文件。警告和错误的数量以(黄色和红色)高亮显示,因此我们能够很轻易地看到问题出现在哪里。...

.cat文件如何打开?总结很全面速看!还在用 tail、more 查看日志?你需要学习点新工具了

.cat文件如何打开?总结很全面速看!还在用 tail、more 查看日志?你需要学习点新工具了

.cat文件如何打开相关介绍,基于消息的时间戳,lnav 能把多个日志文件合并到一个视图,从而避免打开多个窗口。左边的颜色栏帮助显示消息所属的文件。警告和错误的数量以(黄色和红色)高亮显示,因此我们能够很轻易地看到问题出现在哪里。...

.cat文件如何打开?终于找到答案了还在用 tail、more 查看日志?你需要学习点新工具了

.cat文件如何打开?终于找到答案了还在用 tail、more 查看日志?你需要学习点新工具了

.cat文件如何打开相关介绍,基于消息的时间戳,lnav 能把多个日志文件合并到一个视图,从而避免打开多个窗口。左边的颜色栏帮助显示消息所属的文件。警告和错误的数量以(黄色和红色)高亮显示,因此我们能够很轻易地看到问题出现在哪里。...

.cat文件如何打开看这里!每天学一个 Linux 命令(14):cat

.cat文件如何打开看这里!每天学一个 Linux 命令(14):cat

.cat文件如何打开相关介绍,命令简介 cat命令用来连接文件内容并打印输出到标准设备上,所以,它常常被用来查看显示文件的内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。 cat命令三大功...

.cat文件如何打开看这里!深入解析Linux常用命令(五)——cat

.cat文件如何打开看这里!深入解析Linux常用命令(五)——cat

.cat文件如何打开相关介绍,1.概述 cat常用于查看文件内容。 2.显示文件内容(显示字符) cat -A 显示文件内容,包括结束符、TAB。其中结束符以$显示,TAB以^I显示,空格不显示。 [root@smart Desk...

关于.cat文件如何打开,你需要知道这些每天学一个 Linux 命令(14):cat

关于.cat文件如何打开,你需要知道这些每天学一个 Linux 命令(14):cat

.cat文件如何打开相关介绍,命令简介 Cat命令用于连接文件内容并输出到标准设备,因此经常用于查看显示文件的内容、连接多个文件以显示,或从标准输入读取和显示内容。经常与重定向符号一起使用。 cat命令三大功能 1、显示一个文件的...

.cat文件如何打开?我来告诉你答案每天学一个 Linux 命令(14):cat

.cat文件如何打开?我来告诉你答案每天学一个 Linux 命令(14):cat

.cat文件如何打开相关介绍,命令简介 cat命令用来连接文件内容并打印输出到标准设备上,所以,它常常被用来查看显示文件的内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。 达到当天最大量A...

.cat文件如何打开?总结很全面速看!每天学一个 Linux 命令(14):cat

.cat文件如何打开?总结很全面速看!每天学一个 Linux 命令(14):cat

.cat文件如何打开相关介绍,命令简介 Cat命令用于连接文件内容并输出到标准设备,因此经常用于查看显示文件的内容、连接多个文件以显示,或从标准输入读取和显示内容。经常与重定向符号一起使用。 cat命令三大功能 1、显示一个文件的...