温馨提示×

CentOS Stream 8如何查看日志

小樊
55
2025-09-01 18:26:45
栏目: 智能运维

CentOS Stream 8查看日志的常用方法

1. 使用journalctl命令(系统日志核心工具)

journalctl是systemd日志系统的管理工具,可高效查询、过滤系统及服务日志,是CentOS Stream 8查看日志的主要方式。

  • 查看所有日志:直接运行journalctl,日志按时间倒序排列(最新日志在前),支持用/键搜索关键词(如输入/error可查找错误日志)。
  • 查看实时日志:使用journalctl -f(或--follow),类似tail -f,可动态跟踪日志更新(如实时监控服务状态)。
  • 查看特定服务的日志:通过-u参数指定服务名称(如journalctl -u sshd查看SSH服务日志,journalctl -u nginx查看Nginx服务日志),帮助快速定位服务相关问题。
  • 按时间筛选日志
    • 查看最近1小时的日志:journalctl --since "1 hour ago"(相对时间);
    • 查看指定时间范围的日志:journalctl --since "2025-08-30 09:00:00" --until "2025-08-30 10:00:00"(精确到秒),适合排查特定时间段的问题。
  • 查看内核日志:使用journalctl -k(或--dmesg),显示内核层日志(如硬件驱动加载、设备连接等信息),有助于诊断硬件或内核相关故障。
  • 按优先级过滤:用-p参数指定日志级别(如journalctl -p err查看错误及以上级别日志,journalctl -p crit查看严重错误日志),快速聚焦关键问题。

2. 查看传统/var/log目录下的日志文件

CentOS Stream 8虽采用systemd,但仍保留部分传统日志文件,位于/var/log目录下,适合查看特定应用的日志。

  • 系统通用日志
    • /var/log/messages:记录系统级常规消息(如内核信息、服务启动状态),可使用cat /var/log/messages查看全部内容,less /var/log/messages分页浏览,tail -f /var/log/messages实时跟踪更新。
    • /var/log/secure:记录安全相关事件(如用户登录、权限变更、sudo使用记录),适合审计用户操作。
  • 应用特定日志
    • Apache HTTP服务器:/var/log/httpd/access_log(访问日志,记录用户请求)、/var/log/httpd/error_log(错误日志,记录服务器错误);
    • MySQL数据库:/var/log/mysqld.log(默认日志文件,记录数据库操作、错误信息);
    • PostgreSQL数据库:/var/log/postgresql/目录下(如postgresql-*.log,记录数据库活动)。

3. 辅助工具:less与tail

  • less命令:用于分页查看大型日志文件(如/var/log/messages),支持上下翻页(/键)、跳转到指定行(Ctrl+G输入行号)、搜索关键词(/后输入内容),按q退出。
  • tail命令:用于查看文件末尾内容,tail -n 100 /var/log/messages显示最后100行(适合快速查看最新日志),tail -f /var/log/messages实时跟踪日志更新(类似journalctl -f)。

0