Created Getting a crash log out of Element Desktop (markdown)

James Salter 2022-05-18 17:04:19 +01:00
parent bb2761e88a
commit e4f6a09071

@ -0,0 +1,38 @@
Sometimes, Element Desktop crashes.
## Crashes
A crash manifests itself in two ways:
1. The entire app crashes, causing it to disappear. This means the main Electron process has crashed.
2. The app's screen goes entirely white. This means the render process of Electron has crashed.
If you instead experience JS errors, spinners that don't go away, or some other breakage - that's not technically a crash, and you should instead report the problem via submitting debug logs (top right menu -> Feedback -> Debug logs). This article is strictly for when you experience a crash of the Electron process.
## Getting a crash log
In order for anyone to work on your issue, you'll need to create a crash log. How difficult this is depends on your system.
### OS X
Open Console.app (in Applications -> Utilities) and go to Crash Reports. You should be able to see an entry that corresponds to Element crashing. Copy and paste the contents of that report into a comment on the defect issue that you've created.
### Linux
It depends on your system. The overall idea is
1. Configure your system to produce a "core dump" when Element crashes
2. Open the core dump in `gdb`, run `bt`, and copy and paste the results.
- Arch: https://wiki.archlinux.org/title/Core_dump#Examining_a_core_dump
- Ubuntu: https://askubuntu.com/questions/966407/where-do-i-find-the-core-dump-in-ubuntu-16-04lts#:~:text=In%20Ubuntu%20the%20core%20dumps,or%20sudo%20service%20apport%20start%20.
#### Debug builds
On most Linux builds, Element doesn't include debug symbols, which means it's still quite hard to tell what's going on - the crash dump won't contain the names of functions that the program is in, just which libraries are being used.
It's possible to make an unstripped build which includes those symbols; how to do this varies according to which package you're using. See [here](https://github.com/vector-im/element-web/issues/20926#issuecomment-1040125668) for some suggestions on how to accomplish this on Arch Linux.