lnav: 用于 Linux 的高级日志文件浏览器

2023-01-18
2分钟阅读时长

如果你想调试或排除任何问题,你需要一个像 lnav 这样的高级日志文件查看器。它在任何 Linux 系统的终端都能创造奇迹。

lnav 可以即时解压缩所有的压缩日志文件,并将它们合并在一起进行漂亮的显示。显示是根据错误/警告的类型进行解析和格式化的,这有助于快速浏览成千上万的日志,特别是在服务器中。

在分析日志的时候,时间戳是非常重要的。所以 lnav 会根据时间戳合并多个日志,这对追踪系统问题很有帮助。

大多数重要的日志文件格式检测都是内置的,包括如下:

  • 通用网络访问日志 Common Web Access Log 格式
  • CUPS page_log
  • Syslog
  • Glog
  • VMware ESXi/vCenter 日志
  • dpkg.log
  • uwsgi
  • “通用”:任何以时间戳开头的信息
  • Strace
  • sudo
  • GZIP、BZIP

这还不是全部,lnav 还能实现以下功能,使其成为 Linux 系统的重要应用:

  • 根据正则表达式过滤消息
  • 错误日志的时间轴视图
  • 漂亮的打印视图,这有助于重新格式化
  • 使用 SQL 查询日志
  • 在搜索时,日志会实时更新
  • 通过正则表达式高亮显示语法(比如你想在整个日志中找出一个 IP 地址)
  • 显示的日志中任何单词的 Tab 补全!!

lnav 在 ubuntu 中运行

要查看上述功能的截图和了解更多信息,请访问 本页面

如何安装

这个程序在 Ubuntu、Debian 的官方仓库中可以找到。使用以下命令安装它。

sudo apt install lnav

而对于 Fedora、RHEL 用户,使用下面的命令:

sudo dnf install lnav

另外,开发者还提供了一个离线的独立可执行文件,你不需要安装。你可以从 GitHub 发布页 下载压缩包,然后按以下方式执行:

./lnav

注意:它也可用于 macOS,你可以在上述 GitHub 页面找到。

简单的命令语法是:

lnav [options] [logfile1 logfile2 …]

如果你直接运行 lnav 命令,它会显示你系统中的所有日志(/var/log/messages/var/log/syslog)

lnav

要查看任何特定的日志文件,在命令行中输入:

lnav /var/log/syslog

使用 -t 参数在你的日志输出中添加时间戳:

lnav -t /var/log/syslog

以下是 lnav 的一些关键开关:

  • -d file:将调试信息写入给定的文件。
  • -a:加载所有最新的日志文件类型。
  • -r:也加载较早的轮转的日志文件。
  • -t:在标准输入中读入的数据行上预加时间戳。
  • -w file:将标准输入的内容写入该文件。
  • -c cmd:在文件加载后执行命令。
  • -f path:执行给定文件中的命令。
  • -n:不使用 curses UI 运行(无头模式)。

lnav 在 Ubuntu 22.04 中运行

要进一步阅读和探索,请访问 官方文档


via: https://www.debugpoint.com/advanced-log-file-viewer-lnav-ubuntu-linux/

作者:Arindam 选题:lkxed 译者:geekpi 校对:wxy

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