LOGS CAN CONTAIN PRIVATE INFORMATION. CHECK ALL LOGS WITH EMPATHY BUGS
Telepathy programs have useful debug output for debugging. When you're facing a bug it's always a good idea to attach those debug output to the bug report.
Here is an example using telepathy-gabble (the Jabber connection manager); for more details and instructions for other protocols, see the Debugging page on the Telepathy wiki.
- Kill all Telepathy related processes. Quitting empathy should be enough but to make sure you may want to kill them:
$ killall empathy mission-control telepathy-gabble telepathy-stream-engine
- Start programs in different consoles:
$ GABBLE_LOGFILE=/tmp/gabble.log GABBLE_PERSIST=1 GABBLE_DEBUG=all $prefix/telepathy/telepathy-gabble $ $prefix/lib/telepathy/mission-control $ EMPATHY_LOGFILE=/tmp/empathy.log EMPATHY_DEBUG=all empathy
If you want to debug audio or video issues, you can start empathy with$ EMPATHY_LOGFILE=/tmp/empathy.log GST_DEBUG=\*fsrtp\*:5 EMPATHY_DEBUG=all empathy
Note: "$prefix" should be replaced by /usr/lib/ or /usr/libexec or something like that depending on your installation
If you want to always keep logs you can export *_LOGFILE, *_PERSIST and *_DEBUG in ~/.gnomerc or ~/.bashrc. To add timestamp in logs you can define *_TIMING.
- Note: '*' can be replaced by GABBLE, BUTTERFLY, SALUT, EMPATHY, HAZE and SOFIASIP.
Getting a stack trace
The most useful debugging information you can provide when encountering a crash in Empathy is by providing a stack trace.
- Install debugging symbols for Empathy and telepathy-*.
Start Empathy with gdb
$ gdb empathy
Run Empathy
(gdb) run
- Make it crash
Get the stacktrace
(gdb) thread apply all bt full
Copy the output of bt to a pastebin (such as http://www.pastebin.com).