about • Users will not send you “steps to reproduce” — they will leave a zero-star review that says “shit dont work” • If you find out (or the client finds out) that there is a crasher in the released build, you’ll want to fix it ASAP • If you don’t know how to reproduce it, you’ll need the stack trace
can generate thousands of crash log reports, but you only want to look at a single instance and ignore the rest • (Semi)automatic symbolication for iOS (in some services, just upload the .dSYM of each build — in others, even this is not required) • Features for searching, browsing, and filtering crashes based on OS/app version, or other device state variables • Project management tool integrations (bug trackers etc.)
Symbolication • Custom report metadata • Looks like they are trying to be more “enterprise- like” • My limited experience: seemed pretty good • 3rd party SDKs for iOS and Android • Symbolication (client-side) • Custom report metadata • Pretty much meant for server-side (Ruby) apps; mobile apps not a “good fit” • My experience: I wouldn’t recommend for mobile apps • Only iOS SDK (Android coming later) • Symbolication • Custom report metadata • I have no experience
Symbolication (paying customers only; server- or client-side) • Custom report metadata • My limited experience: seemed pretty good • Mobile OS SDKs for iOS, Android, WP… • SaaS or self-hosted (QuincyKit) • Custom report metadata: one string (iOS) or none (WP) • Well-known • I have no experience • SDKs for iOS and Android only • Symbolication (client-side) • Custom report metadata • They act like they’re “Invite only” and make you jump through hoops to start using it • Owned by Twitter nowadays (WTF.) • Well-known • Based on some quick testing, seems very polished
whatever they may be • Client doesn’t want to use a service for whatever reason • Be a good consultant and help them make a good decision • “We want it in our own datacenter” is not reason enough to do it manually → HockeyApp (QuincyKit) can be self-hosted
into the VCS) • This preserves the debug symbols for the binary • Dropping an .xcarchive into the Xcode organizer allows the auto-symbolication features to work Manually
be used ☹ • StackFrame::GetFileLineNumber() either throws an exception or always returns zero ☹ • Exception::StackTrace might contain file names and line numbers (?) but it’s just a string Manually var trace = new StackTrace(exception); StackFrame[] frames = trace.GetFrames();