Reading macOS Logs Like a Pro — Console.app and Beyond / Article
Article · LogStudio

Reading macOS Logs Like a Pro — Console.app and Beyond

Updated 2026-06-28 · 1 min read

When something misbehaves on macOS, the answer is usually in a log — buried under thousands of lines scrolling past in Console.app. Here's how to actually find it.

The unified logging system

Since macOS Sierra, system and app logs flow through unified logging. Key concepts:

  • Subsystem — reverse-DNS identifier, e.g. com.apple.network
  • Category — a subsystem's sub-channel
  • Level — fault, error, default, info, debug

Useful log commands

# Stream errors from one process
log stream --predicate 'process == "MyApp"' --level error

# Show the last hour of faults
log show --last 1h --predicate 'messageType == fault'

Predicates are powerful but verbose — and the output is still a wall of text.

When files are the source

Crash reports live in ~/Library/Logs/DiagnosticReports; many apps also write plain .log files to ~/Library/Logs. The pain points are always the same: huge files, mixed formats, and no way to filter by severity across sources.

A purpose-built viewer

LogStudio parses log files into structured, filterable tables — severity colors, instant search, timeline jumps — so a 500 MB log stops being a wall of text and becomes something you can actually interrogate.

LogStudio
LogStudioView features, screenshots, download options, and privacy information.
View app ›