[General Questions and Answers] deviantintegral:
I've been running Cyanogenmod 10.2 on my 2012 Nexus 7, and I've been having trouble with random reboots every few days. I have no idea if this is hardware, ROM, or app related, and debugging it has been tough because it seems to only happen when I'm not actively using the tablet.

I installed RebootLogger along with catlog, and luckily it captured something during a reboot. What's interesting is that it's not a full reboot to the bootloader, but just seems to reload the UI / app layers. So far, these are the only logs I've been able to capture. I've got more, but I think this is the relevant subset:

02-27 15:18:44.060 I/ActivityManager(20034): Process com.levelup.touiteur (pid 2793) has died.
02-27 15:18:44.150 I/ActivityManager(20034): Process com.google.android.partnersetup (pid 1768) has died.
02-27 15:18:59.514 I/ActivityManager(20034): Process com.google.android.googlequicksearchbox:search (pid 1750) has died.
02-27 15:19:45.146 I/ActivityManager(20034): Start proc com.google.android.googlequicksearchbox:search for broadcast com.google.android.googlequicksearchbox/com.google.android.sidekick.main.calendar.CalendarIntentService$CalendarReceiver: pid=3429 uid=10037 gids={50037, 3003, 1028, 3002, 1015}
02-27 15:19:46.146 I/ActivityManager(20034): Start proc com.google.android.partnersetup for content provider com.google.android.partnersetup/.RlzAppProvider: pid=3446 uid=10058 gids={50058, 3003, 1028}
02-27 15:22:28.584 W/Watchdog(20034): *** WATCHDOG KILLING SYSTEM PROCESS: null
02-27 15:22:28.984 E/AndroidRuntime(3489): FATAL EXCEPTION: main
02-27 15:22:28.984 E/AndroidRuntime(3489): java.lang.NullPointerException
02-27 15:22:28.984 E/AndroidRuntime(3489):	at android.app.ActivityThread.attach(ActivityThread.java:5156)
02-27 15:22:28.984 E/AndroidRuntime(3489):	at android.app.ActivityThread.main(ActivityThread.java:5276)
02-27 15:22:28.984 E/AndroidRuntime(3489):	at java.lang.reflect.Method.invokeNative(Native Method)
02-27 15:22:28.984 E/AndroidRuntime(3489):	at java.lang.reflect.Method.invoke(Method.java:525)
02-27 15:22:28.984 E/AndroidRuntime(3489):	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
02-27 15:22:28.984 E/AndroidRuntime(3489):	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
02-27 15:22:28.984 E/AndroidRuntime(3489):	at dalvik.system.NativeStart.main(Native Method)
02-27 15:22:29.024 E/AndroidRuntime(3489): Error reporting crash
02-27 15:22:29.024 E/AndroidRuntime(3489): java.lang.NullPointerException
02-27 15:22:29.024 E/AndroidRuntime(3489):	at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:76)
02-27 15:22:29.024 E/AndroidRuntime(3489):	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
02-27 15:22:29.024 E/AndroidRuntime(3489):	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
02-27 15:22:29.024 E/AndroidRuntime(3489):	at dalvik.system.NativeStart.main(Native Method)
02-27 15:22:29.054 E/ActivityThread(3429): Failed to find provider info for com.android.calendar
02-27 15:22:29.054 E/ActivityThread(3429): Failed to find provider info for com.android.calendar
02-27 15:22:31.834 W/dalvikvm(3526): PR_SET_NO_NEW_PRIVS failed. Is your kernel compiled correctly?: Invalid argument
02-27 15:22:34.384 I/SystemServer(3740): Entered the Android system server!
02-27 15:22:34.384 I/SystemServer(3740): Waiting for installd to be ready.
02-27 15:22:34.384 I/SystemServer(3740): Enabled StrictMode logging for UI Looper
02-27 15:22:34.384 I/SystemServer(3740): Enabled StrictMode logging for WM Looper
02-27 15:22:34.384 I/Installer(3740): connecting...
02-27 15:22:34.384 I/SystemServer(3740): Power Manager

So far, my best guess is that it might be an app or service causing the crash, but that the actual bug might be in the ROM since I would assume that logging "null" as the failed process is not correct. To end this with some actual questions:

Are there any other, better methods for debugging this? Since it only happens every few days leaving it wired up isn't really an option.

Anything I'm missing in the above that points to where I should start looking next?

Is there a way I can get it to wait for a debugger on the exception, even if I'm unplugged at the moment? Just some way so I can inspect the system at the moment of the exception without constantly being on USB.