Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android crash symbolication fails if last stack frame is from android os or other 3rd party library #1372

Closed
amattila opened this issue Nov 15, 2019 · 13 comments
Assignees
Labels
diagnostics Related to App Center's Diagnostics service feature request New feature request Stale

Comments

@amattila
Copy link

When your app crashes on c++ code, and your own code is the last frame in stack, crashes are shown in UI and symbolicated correctly (using breakpad & dump_syms). BUT, if app bug causes library to crash or throw exception, so that the last frame in stack is from webview, this causes crash not to show up in crashes but in "Unsymbolicated" tab. Error message says it's missing "libwebviewchromium.so.sym".

It makes noi sense to run dump_syms, zip the files and upload every platform library on NDK, just to prepare for scenario where the crash might happen on some platform library.

Crashes should be shown, even if symbols are missing. Showing just the memory address is lot better than not showing the crash at all. This is also how Hockeyapp, Crashlytics and other crash reporting services work.

@cainejette
Copy link

Hi there! 👋We are working on a fix for this now. Stay tuned!

@cainejette
Copy link

Are you building/packaging the .so files within your app?

@cainejette
Copy link

If you don't want to upload debug symbols for this library, you can mark these as "Ignored" in the Unsymbolicated tab. See here for how to Ignore symbols you don't plan to upload. This way, the crashes will be shown, only partially symbolicated.

@cainejette
Copy link

We're also working on showing unsymbolicated crashes side-by-side symbolicated crashes, similar to how HockeyApp does. You can see this in our iteration plan.

@amattila
Copy link
Author

Are you building/packaging the .so files within your app?

No, I’m talking about android os libraries that come with NDK. It does not make sense to symbolicate all platform libraries and send them over, as they are same for all apps.

And no, I’m not packaging them within the app.

@amattila
Copy link
Author

If you don't want to upload debug symbols for this library, you can mark these as "Ignored" in the Unsymbolicated tab. See here for how to Ignore symbols you don't plan to upload. This way, the crashes will be shown, only partially symbolicated.

Instructions say “you can mark them as Ignored by selecting rows in the table and clicking the Ignore versions button.“, but there is no such button. Only “Upload symbols” -button.

@cainejette
Copy link

If you open a support ticket, we can look more closely at your specific case! There should be rows in that Unsymbolicated table that you can select, and that's when the ignore button appears.

@amattila
Copy link
Author

If you open a support ticket, we can look more closely at your specific case! There should be rows in that Unsymbolicated table that you can select, and that's when the ignore button appears.

Got that working. I need to select the app version with checkmark and say ignore version for that, not for the missing symbols. Bit weird UX but at least it works, thanks :)

@amattila
Copy link
Author

Oh, and you need to have phone in landscape to see that checkbox.

@Oddj0b Oddj0b added the diagnostics Related to App Center's Diagnostics service label Jan 30, 2020
@Oddj0b
Copy link
Contributor

Oddj0b commented Jan 30, 2020

hey @amattila are you still having this issue?

@bhoopathik
Copy link

Hi,
This issue still happening.

"libwebviewchromium.so.sym" is of 3rd party Android webview chromium library.

Our Native crashes not processed to identify the file, line number and function name on which crash happened, even after ignoring the Unsymbilicated missing symbol "libwebviewchromium.so.sym".

It just saying showing memory addressed. as below

MAIN THREAD - CRASHED

test_lib.so     0x8941928a + 11297419
lib123.so       0xb14257f7 + 2021367
                0xb2cfa82a + 6186
                0x1314998e + 5544334
                0xb2cfa82a + 6186

To be sure, i downloaded the same minidumo.dmp from appcenter and used stackwalker tool (https://github.com/mozilla-services/socorro/tree/master/minidump-stackwalk) to symbolification, that is working and able to identify file name, line number and function where the crash happened. But same minidump and symbol files, symbolification is not happening in Appcenter.

Please help us to resolve this issue.

@ghost ghost added the Stale label Jun 29, 2021
@ghost
Copy link

ghost commented Jun 29, 2021

This issue has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs within 15 days of this comment.

@ghost
Copy link

ghost commented Jul 14, 2021

This issue will now be closed because it hasn't had any activity for 15 days after stale. Please feel free to open a new issue if you still have a question/issue or suggestion.

@ghost ghost closed this as completed Jul 14, 2021
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
diagnostics Related to App Center's Diagnostics service feature request New feature request Stale
Projects
None yet
Development

No branches or pull requests

5 participants