Using LLDB, Instruments, and Xcode to understand a codebase
summary
Uses Xcode’s symbol navigator and call‑hierarchy to find entry points, LLDB symbolic breakpoints and a .lldbinit with Python scripts to print tokens, clear caches and play an audio breakpoint when view controllers fail to release, and Instruments’ OS_log and signpost lanes to visualize runtime behavior without changing code. Builds custom instrument XMLs (and Clips snippets) that pattern‑match unified logging to plot requests and cancellations. Shares breakpoint/script files with the team; custom instruments and scripts generally work though trace recording can be flaky.
AI-written summary · about
chapters (12)
- 0:00Start
- 2:44New Project
- 13:05Common Tasks
- 18:35Logs
- 20:31Readable Mini-Map
- 21:49Commands
- 22:55Scripts
- 27:19Inspecting
- 29:11Unified Logging
- 29:53Schema Definitions
- 31:10Instrument Definitions
- 40:14Debugging
related talks
45mAdvanced Debugging with XCode – Extending LLDB
37mTake your iOS debugging skills to the next level
32mLLDB Scripting for iOS Developers
46mThe Hidden Secrets of Debugging
29mLiberating the Debugging Experience with the GDB Python API
40mAll you Need to Know About Xcode Hidden Logs
42mWhat Really Happens When You Hit a Breakpoint
01h 01mDebugger: A Hidden Gem
