Monday, February 22, 2010

How to read crash log file for iPhone OS

Search in your "spotlight" for : symbolicatecrash
Or you can download it here

Run:

./symbolicatecrash log.crash test.app.dSYM

The output will transform the memory address to line number and file name.

This will help you a lot in debugging iPhone's Apps, especially when the crash log is from Apple App Review Team (who sucks!!).

Before symbolication, the crash log is like:

"
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]

Date/Time: 2010-02-22 22:07:41.175 -0500
OS Version: iPhone OS 3.1.3 (7E18)
Report Version: 104

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread: 0

Thread 0 Crashed:
0 libSystem.B.dylib 0x33994b2c 0x33904000 + 592684
1 libSystem.B.dylib 0x33994b1a 0x33904000 + 592666
2 libSystem.B.dylib 0x33994b0e 0x33904000 + 592654
3 libSystem.B.dylib 0x339abe34 0x33904000 + 687668
4 libstdc++.6.dylib 0x30800390 0x3079a000 + 418704
5 libobjc.A.dylib 0x3336e898 0x33366000 + 34968
6 libstdc++.6.dylib 0x307fda84 0x3079a000 + 408196
7 libstdc++.6.dylib 0x307fdafc 0x3079a000 + 408316
8 libstdc++.6.dylib 0x307fdc24 0x3079a000 + 408612
9 libobjc.A.dylib 0x3336ce54 0x33366000 + 28244
10 CoreFoundation 0x3387db2c 0x33857000 + 158508
11 CoreFoundation 0x3387dacc 0x33857000 + 158412
12 Foundation 0x32e9970a 0x32e78000 + 136970
13 Foundation 0x32ebf520 0x32e78000 + 292128
14 Show Off 0x00002caa -[AppDelegate applicationDidFinishLaunching:] (AppDelegate.m:164)
15 UIKit 0x32003e88 0x31fff000 + 20104
16 UIKit 0x32003a60 0x31fff000 + 19040
17 UIKit 0x32054df8 0x31fff000 + 351736
18 UIKit 0x32054634 0x31fff000 + 349748
19 UIKit 0x3205408c 0x31fff000 + 348300
20 GraphicsServices 0x3434f7dc 0x3434a000 + 22492
21 CoreFoundation 0x338ae524 0x33857000 + 357668
22 CoreFoundation 0x338adc18 0x33857000 + 355352
23 UIKit 0x32002c00 0x31fff000 + 15360
24 UIKit 0x32001228 0x31fff000 + 8744
25 Show Off 0x000027a0 main (main.m:7)
26 Show Off 0x0000273c start + 44

"

After transformation, it looks like:
"
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]

Date/Time: 2010-02-22 14:27:43.947 -0800
OS Version: iPhone OS 3.1.3 (7E18)
Report Version: 104

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread: 0

Thread 0 Crashed:
0 libSystem.B.dylib 0x33994b2c 0x33904000 + 592684
1 libSystem.B.dylib 0x33994b1a 0x33904000 + 592666
2 libSystem.B.dylib 0x33994b0e 0x33904000 + 592654
3 libSystem.B.dylib 0x339abe34 0x33904000 + 687668
4 libstdc++.6.dylib 0x30800390 0x3079a000 + 418704
5 libobjc.A.dylib 0x3336e898 0x33366000 + 34968
6 libstdc++.6.dylib 0x307fda84 0x3079a000 + 408196
7 libstdc++.6.dylib 0x307fdafc 0x3079a000 + 408316
8 libstdc++.6.dylib 0x307fdc24 0x3079a000 + 408612
9 libobjc.A.dylib 0x3336ce54 0x33366000 + 28244
10 CoreFoundation 0x338ecbf6 0x33857000 + 613366
11 CoreFoundation 0x33871b12 0x33857000 + 109330
12 CoreFoundation 0x33868838 0x33857000 + 71736
13 test 0x0001a4ce -[TTViewController shouldAutorotateToInterfaceOrientation:] (TTViewController.m:197)
14 UIKit 0x32085988 0x31fff000 + 551304
15 UIKit 0x320efe38 0x31fff000 + 986680
16 UIKit 0x320b439c 0x31fff000 + 742300
17 test 0x000155be -[TTTableViewController initWithStyle:] (TTTableViewController.m:128)
18 test 0x0001458e -[TTTableViewController init] (TTTableViewController.m:135)
19 test 0x0000343e -[CatalogController init] (CatalogController.m:11)
20 test 0x0003f1fc -[TTURLNavigatorPattern createObjectFromURL:query:] (TTURLPattern.m:747)
21 test 0x0003dc9e -[TTURLMap objectForURL:query:pattern:] (TTURLMap.m:304)
22 test 0x000426c4 -[TTNavigator viewControllerForURL:query:pattern:] (TTNavigator.m:478)
23 test 0x0004291c -[TTNavigator openURL:parent:query:state:animated:transition:withDelay:] (TTNavigator.m:238)
24 test 0x00041d12 -[TTNavigator openURL:animated:] (TTNavigator.m:390)
25 test 0x00002d66 -[AppDelegate applicationDidFinishLaunching:] (AppDelegate.m:133)
26 UIKit 0x32003e88 0x31fff000 + 20104
27 UIKit 0x32003a60 0x31fff000 + 19040
28 UIKit 0x32054df8 0x31fff000 + 351736
29 UIKit 0x32054634 0x31fff000 + 349748
30 UIKit 0x3205408c 0x31fff000 + 348300
31 GraphicsServices 0x3434f7dc 0x3434a000 + 22492
32 CoreFoundation 0x338ae524 0x33857000 + 357668
33 CoreFoundation 0x338adc18 0x33857000 + 355352
34 UIKit 0x32002c00 0x31fff000 + 15360
35 UIKit 0x32001228 0x31fff000 + 8744
36 test 0x00002968 main (main.m:7)
37 test 0x00002924 start + 44

"