iPhone logs. Good value or waste of time

Ben Toner
4 min readSep 24, 2021

As mobile developers, log analysis is great when we can see exactly what is going on with our apps. If we can quickly debug or validate our app using logs, then it really can help the dev cycle. The connectivity of the device is one key area that affects the app performance and consequently, user engagement. But is it easy enough to understand?

iPhone log capture showing connectivity information

An iPhone log asynchronously distributes details of the Wi-Fi connectivity.

We all know how hard it is to get a decent understanding of iPhone connectivity. So what are your options:

  1. You can install the MegaWifiProfile (You need to be signed in to your Apple account) and also use the field test menu (dial *3001#12345#*).

This is a great way to get instant feedback about the Wi-Fi and cellular services you are connected to but they do not log to a nice simple file such as a csv.

The Wi-Fi profile also allows you to capture and download Wi-Fi logs but it is still a lot of effort to correlate that to what was my app was doing at a particular moment in time and how did connectivity affect it?

2. You can also use AirPort Utility

With the right setup (Settings → Airport Utility → Wi-Fi Scanner) you can turn on scanning, walk about and then export a csv which contains the fields SSID, BSS, RSSI, Channel, & Time

There is no knowledge of channel width, security, spatial streams, whether the iPhone classifies this as “at home” or if it thinks it is part of a multi-AP environment.

Useful but not quite enough.

3. You can decipher the logs yourself.

All well and good but believe me — it takes a LOT of time to decipher them!

Throw in the fact that some logs are just plain wrong and you might find that the source of all information just ends up being a total drain on time (and you are still not sure if you have the right answer at the end of it).

For example, I recently discovered that when connecting my iPhone 12 to a Wi-Fi 6 AP (802.11ax), Apple indicated that it was Wi-Fi 6 in a brand new log message BUT LEFT IN THE OLD WI-FI 5 MESSAGE. What!

Try it — connect to Wi-Fi 6 and you will see this log message:

RAT changed: radio-technology 802.11ac

Confusing or what…

Let’s face it. connectivity logs are hard to decipher! I’ve spent many a long day trawling through iPhone logs only to find that I still didn’t really understand the output well enough. There are so many log messages appearing asynchronously from different parts of the system to really get a good view of what is going on. But the info is there so you can find out what you need with enough patience and time.

In this last year, I thought it would be good to try and turn those many many hours of log analysis into a tool to help those after me. The tool is called nOversight and is now the 4th and most comprehensive way to capture that connectivity information in an easy to understand format. I really hope it helps some of you devs out there.

nOversight captures the real-time connectivity information and records it as sessions. It captures the roaming behaviour of Wi-Fi too. Statistics and a handy experience score are created so you can repeat tests and see the improvement to the environment you are in.

There is a way to go to get this to where it needs to be but i’ll put it out to you, the community, to tell me what you think and whether you’d like to see more…

--

--

Ben Toner

Ben has been providing consultancy and innovation into the wireless market for over 20 years and specialises in mobile connectivity