Sometimes it happen that some application crash without give no output error (conky in my case, probably is one of my configuration that is incorrect).
Is there somewhere a error log that I can check to understand why it is crashed?
Sometimes it happen that some application crash without give no output error (conky in my case, probably is one of my configuration that is incorrect).
Is there somewhere a error log that I can check to understand why it is crashed?
Depends on the application. Different applications have different logging systems; there's no one central log that contains all the output from all the programs that run on your system.
That being said, a lot of programs do put their log files in the directory
/var/log
. The file/var/log/syslog
(or maybe/var/log/messages
), in particular, contains output from the "system logger", which is a service made available by the system that programs can use (if they choose to) for logging. But not all programs use it. Mostly, you'll find messages from low-level system services in that file, not the graphical applications you probably use normally.You may want to read more about the locations of standard log files.
crash files go into
/var/log/crashes/
for use with apport to report bugs. You can extract a core dump withapport-unpack
, put that core dump through gdb, and find out what's causing the program to crash.This is all assuming you're a programmer. If you're not...well, you can't fix the crash anyway!
For conky it could also be that there are entries in
$HOME/.xsession-errors
.Some applications have flags that can be used to turn on debugging, such as -d, -D, --debug, etc. Check the application's man page (
man [my-app]
) or run the app with the -h flag to see if it has such an option.Many GUI apps write into $HOME/.xsession-errors so that's a good place to check for output.
maco's right that apport is probably the most sure-fire way to get good debug info. Sometimes it doesn't capture the crash, though.
If all else fails, you can also force the info out of it by running the app in gdb. It'd be something like:
... do whatever is needed to get it to crash ...
and go from there.
If you go the gdb route you'll also want to install symbols, as mentioned previously. See https://wiki.ubuntu.com/DebuggingProgramCrash for handholding advice.
you can go to
/var/log/messages or crashes
then you can run thegrep
command on those and search for the application your looking for the files can get pretty big sometimes. It will return information relevant to your applicaton. :)If you are launching your application from a .desktop launcher file, add the option
Terminal=true
to your .desktop file. This will open up a terminal when you run the program, output on the terminal will be similar to what you'd see if you had run the program via the command line in the first place. This way, when the GUI crashes or hangs, you can see what text output was leading up to it.