温馨提示×

linux日志格式怎么看

小樊
47
2026-10-08 08:57:33
栏目: 智能运维

在 Linux 中,“日志格式”通常取决于日志系统类型和具体服务。下面按常见情况给你一个清晰的入门说明。


一、先看系统用的什么日志系统

1. systemd 系统(主流,CentOS 7+/Ubuntu 16.04+)

日志由 systemd-journald 管理,用 journalctl 查看。

journalctl
journalctl -u nginx
journalctl -p err
journalctl --since "2024-01-01" --until "2024-01-02"

特点:

  • 二进制格式,不直接是文本文件
  • 不需要关心文件位置

2. 传统 syslog(老系统)

日志一般在 /var/log/:

/var/log/messages      # 通用系统日志
/var/log/syslog        # Ubuntu/Debian
/var/log/secure        # 安全、登录
/var/log/cron          # 定时任务

查看:

tail -f /var/log/messages
less /var/log/syslog

二、最常见的日志格式(syslog 格式)

典型一行示例:

Jan 12 10:23:45 host sshd[1234]: Failed password for root from 1.2.3.4 port 22 ssh2

字段含义:

时间      主机名  进程[PID]: 日志内容

三、服务自己的日志格式(以 Nginx 为例)

access.log(访问日志)

192.168.1.1 - - [12/Jan/2024:10:00:00 +0800] "GET /index.html HTTP/1.1" 200 532

含义:

  • IP
  • 时间
  • 请求方法 / 路径 / 协议
  • 状态码
  • 响应大小

error.log

2024/01/12 10:01:00 [error] 1234#0: *5 open() "/a.html" failed (2: No such file)

四、常用“看日志”命令

tail -n 100 file.log      # 看最后100行
tail -f file.log          # 实时看
grep "ERROR" file.log     # 过滤关键字
less file.log             # 翻页看

五、如果不知道日志在哪

journalctl -u 服务名

或

find /var/log -name "*.log"

如果你愿意,可以告诉我:

  • 用的 Linux 发行版
  • 想看的 具体服务或问题(如 nginx、ssh、docker)

我可以直接给你对应的日志位置和解读方式。

0 踩