How to browse the log on an iOS device

Ever since its release in macOS Sierra 10.12, I have been disparaging about the new Console app. It still, over eighteen months later, lacks most important features, but I have at last found its real strength: getting to the bottom of iOS problems.

I don’t write much about iOS here because it is so heavily locked down. The range of solutions to iOS problems is far smaller than for macOS, and you can’t do much in the way of diagnosis either. Or at least you can’t unless you use Console.

There are ways of getting iOS, watchOS, and even tvOS to make logarchives which you can transfer to your Mac and analyse there. Because all Apple’s operating systems use the same unified log system now, you can use the Mac’s tools to browse logs from any of them. Console provides interactive browsing, the log command supplies raw power from Terminal, and you can use my free tools Consolation and Woodpile too. But getting logs off these devices is not so simple.

What is simple is inspecting the live log on an iOS device using Console: hook the iPhone or iPad up using a USB cable, as if you were going to sync it using iTunes, and open Console on the Mac (Sierra and High Sierra only).

ioslogging

Connected devices should then appear in the sidebar at the left of Console’s window. Select the iPhone or iPad there, and you will be watching the log entries streaming from that device. Although my Watch is also listed in the screenshot, I was unable to obtain any log content from that; perhaps that has to be enabled separately.

If you’re accustomed to browsing your Mac’s logs, you’ll be familiar with the tools available in Console, and should be able to make broad sense of the entries. You’ll perhaps not be surprised at the many systems which are now common to both macOS and iOS.

This is particularly useful if you have a reproducible problem, such as an app freezing or failing to open. Hook up, open Console, then perform whatever manoeuvre triggers the problem.

Just as with macOS logs, Console doesn’t give any access to log entries before the iOS device is connected: you can’t use it to look at what just happened. If you need to do that, you’ll need to force the device to run sysdiagnose, which includes a bundled logarchive, and work out how to transfer that to your Mac. Apple provides full instructions here, although you may find that you need a paid-up developer account to access them, I’m afraid.

I hope that you find your iOS logs as valuable as those in macOS.