macOS 中如何查看系统日志(syslog)?

macOS 系统日志位于 /var/log/system.log(新版在 /private/var/log/),可用 tail -f 跟踪;现代 macOS 推荐用 log show/log stream 命令查看统一日志。本文介绍各种查看方式。

最佳实践
macOS 中如何查看系统日志(syslog)?封面

传统 syslog 文件:/var/log/system.log(即 /private/var/log/system.log)。现代 macOS(10.12+)主推统一日志系统,用 log show(查历史)和 log stream(实时)命令更完整。

查看 syslog 文件

# 实时跟踪
tail -f /var/log/system.log

# 查看全部
cat /var/log/system.log

# 搜索关键词
grep "error" /var/log/system.log

现代方式:log 命令

macOS Sierra(10.12)起系统日志主要进入 Unified Logging,很多消息不再写入 system.log:

# 查看最近 1 小时的日志
log show --last 1h

# 实时跟踪
log stream

# 按进程过滤
log show --process "kernel" --last 30m

# 只看错误级别
log show --predicate 'messageType == error' --last 1h

图形界面:控制台.app

打开"控制台"(Console.app,在 应用程序 → 实用工具 中),左侧选择设备即可浏览所有系统日志,支持搜索和过滤。

观测云对照

需要在多台 Mac 或混合平台(Mac+Linux+Windows)上统一收集系统日志时,观测云 DataKit 支持 macOS 部署,把系统日志采集到观测云平台统一检索和告警。

常见问题(FAQ)

Q:/var/log/system.log 里没有想找的记录?
A:该消息可能只进了 Unified Logging 而不写文件,用 log show 查找。

Q:log show 输出太多怎么办?
A:加 --last 10m 限定时间窗口,--predicate 精确过滤进程/级别/关键词。

Q:应用崩溃日志在哪?
A:~/Library/Logs/DiagnosticReports/(用户级)和 /Library/Logs/DiagnosticReports/(系统级)。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台