Retrieving JetsamEvent files from device

I'm working with what appears to be a low-memory crash on an iPhone 4s that isn't mine. I can see JetsamEvent-<date> files being created, but I don't have a good way to get them back to my computer: they do not show up in the Device Logs sheet of Xcode's Devices window, and there's no way to manipulate them on the phone (under Settings > Diagnostics & Usage > Diagnostics & Usage Data) other than to manually select and copy all the text, and then mail or iMessage it to mysefl. There has to be a better way, right?


Thanks.


—Chris

Replies

IIRC, if you connect the device to a Mac and then sync, the logs will show up in

/Users/quinn/Library/Logs/CrashReporter/MobileDevice/
.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

IIRC, if you connect the device to a Mac and then sync, the logs will show up in

/Users/quinn/Library/Logs/CrashReporter/MobileDevice/
.

Thanks, but that's why I said it wasn't my device — was trying to avoid an iTunes sync if possible.

BTW, has JetsamEvent replaced LowMemory logs? I haven't seen a LowMemory in ages, and it's not my app getting terminated in the JetsamEvent (although my app is dying nevertheless).

Related: are there any resources on how to read JetsamEvent logs? As I said, there are no LowMemory log files (of the style described in TN2151) on the device.


Looking at the JetsamEvent, am I to understand that *all* processes indicated in the log were ejected from memory, or just some of them? Some of the processes have a "reason", like "vm-pageshortage" or "vm-thrashing", but my process doesn't have a reason, so I can't tell if this is telling me that my app was one of many terminated as part of a low memory problem, or if it was just in memory at the time other processes were killed, and I've been terminated for some other reason not related to the JetsamEvent at all.


Thanks in advance!

BTW, has JetsamEvent replaced LowMemory logs?

Yes. I’ve filed a bug to get TN2151 updated to reflect this (r. 24_608_882).

btw Jetsam is the name of the kernel subsystem that terminates processes to keep the system from running out of memory.

Looking at the JetsamEvent, am I to understand that all processes indicated in the log were ejected from memory, or just some of them?

No. These reports give you an overview of the memory state of the system at the time of the Jetsam event. As you’ve noticed, the critical processes are called out in the ‘reason’ field. As such, much of the advice from TN2151 still applies.

btw I’ve seen two flavours of JetsamEvent reports:

  • Reports coming from my iPhone are formatted very much like the old low memory reports.

  • Reports coming from my AppleTV are in JSON format, but otherwise contain much the same information.

Which are you seeing?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

These logs are no longer appearing in the stated place after an iTunes sync (iOS 9.2.1). There's plenty of other logs there, but no JetsamEvent logs to be seen.


Have they been moved again? Also ideally getting at them wouldn't require firing up iTunes. That's not really an app I'd like to add to my usual debugging cycle.

I am also looking for those logs on my Mac. While they appear on iOS I can't find them either in the stated place, in the Console or in Xcode. How can I access them?