Details
-
Task
-
Resolution: Done
-
P2: Important
-
None
-
None
-
None
-
5
-
cc7be5724ad9e25c03710a17ce50e09088497709 (qt-creator/qt-creator/master)
-
QDS 3D - Week 37/38, QDS 3D - Week 39/40, QDS 3D - Week 41/42, QDS 3D - Week 43/44, QDS 3D - Week 45/46, QDS 3D - 47/48, QDS 3D - 49/50, QDS 3D - 51/52
Description
It is required to add Google's Crashpad (https://chromium.googlesource.com/crashpad/crashpad) to Qt Design Studio to reports crashes to our backend (sentry.io is chosen).
Crashpad starts a process (crash_handler) that handles crashes in the assigned process (Qt Design Studio in this case).
When a crash happens:
- Crashpad's running crash_handler process captures a snapshot of the crashed process and save it to minidump file (.dmp).
- The .dmp file is uploaded to our backend.
- A record in added to the backend with the crash details (call stack, OS, architecture, etc)
For the call stack to appear correctly on the backend, debug information files (DIF) needs to be uploaded to sentry backend as well. Uploading debug symbols happens using the tool (sentry-cli) provided by sentry.io. We need to upload as much diffs as possible that are used to build Design Studio in order for the call stack to appear as complete as possible.
To reduce the size of debug information symbols another tool (dump_syms) - provided by Crashpad - converts DIFs to .sym format which has significantly less file size.
More about how Crashpad works here:
https://chromium.googlesource.com/crashpad/crashpad/+/HEAD/doc/overview_design.md
Crashpad relies on chromium depot_tools for building. The full details of how to build crashpad are here:
https://chromium.googlesource.com/crashpad/crashpad/+/HEAD/doc/developing.md
Attachments
Issue Links
- depends on
-
QDS-2816 Cleanup crashpad minidump bug reports after upload
- Closed
-
QDS-2891 Add crashpad support for linux
- Closed
-
QDS-2902 add crashpad as a submodule to design studio
- Closed
-
QDS-2815 Add crashpad support for mac
- Closed
-
QDS-2817 Cleanup crashpad serverside debug information files from Sentry.io
- Closed
-
QDS-3199 Add Clear local crash reports functionality
- Closed
- mentioned in
-
Page Loading...