本教程介绍了如何实时监控Linux日志文件(桌面、服务器或应用程序)以进行诊断和故障排除。当您在Linux桌面、服务器或任何应用程序中遇到问题时,您首先要查看的是各个日志文件。日志文件通常是来自应用程序的文本流和带时间戳的消息。它可以帮助您缩小特定问题的范围,并使您能够找到问题的原因。它还有助于从网络上获得帮助。通常,所有日志文件都位于/var/log中。此目录包含特定应用程序和服务的扩展名为.log的日志文件,它还包含其他包含日志的单独目录。var-log中的日志文件所以,如果你想监控一堆日志文件或一个特定的日志文件,这里有一些方法可以做到。Linux使用tail命令实时监控日志文件tail命令是实时跟踪日志文件最基本的方式。特别是如果您在只有终端而没有GUI的服务器中。这非常有帮助。基本语法如下:tail/path/to/log/file用法:通过tail监控多个日志文件可以使用开关-f来跟踪实时更新的日志文件。例如,如果你想跟踪syslog,你可以使用下面的命令。tail-f/var/log/syslog你可以用一个命令监控多个日志文件:tail-f/var/log/syslog/var/log/dmesg如果你想监控HTTP或sftp或任何服务器,你可以在此命令使用各自的日志文件。请记住,上述命令需要管理员权限。使用lnav(日志文件浏览器)lnavRunninglnav是一个出色的程序,您可以使用它以更有条理的方式使用颜色编码信息来监视日志文件。在Linux系统上,默认情况下不安装此工具。你可以安装它:Ubuntu:sudoaptinstalllnavFedora:sudodnfinstalllnavlnavlnav的好处是如果你不想安装它,你可以下载它的预编译可执行文件并在任何地方运行它,甚至从USB运行戳。无需设置,并加载了功能。使用lnav,您可以通过SQL查询日志文件,以及您可以在其官方网站上了解的其他很酷的功能。安装完成后,可以在具有管理员权限的终端运行lnav,它会默认显示/var/log中的所有日志,并开始实时监控。关于systemd的journalctl的注释今天所有现代Linux发行版主要使用systemd。systemd提供运行Linux操作系统的基本框架和组件。systemd通过journalctl提供日志服务,这有助于管理来自所有systemd服务的日志。您还可以使用以下命令实时监控各个systemd服务和日志。journalctl-f以下是一些特定的journalctl命令,可以在各种情况下使用。您可以将这些与上面的-f选项结合使用以启动实时监控。对于紧急系统消息,使用:journalctl-p0显示错误和解释:journalctl-xb-p3使用时间控制过滤:journalctl--since"2022-12-0406:00:00"journalctl--since"2022-12-03"--until"2022-12-0503:00:00"journalctl--sinceyesterdayjournalctl--since09:00--until"1hourago"如果想了解更多journalctl详情,我在这里写了一个指南。结论我希望这些命令和技巧可以帮助您找到桌面或服务器中问题/错误的根本原因。
