User:DarioAndres/Basic Guide about Crash Reporting: Difference between revisions

From KDE TechBase
Line 42: Line 42:
===Backtraces===
===Backtraces===


Backtraces are ''essential''. They may look meaningless to you, but they might actually contain a wealth of useful information. A backtrace basically '''describes what was happening inside the application when it crashed''', in a way that developers may track down where the mess started.  
Definition: A backtrace basically '''describes what was happening inside the application when it crashed''', in a way that developers may track down where the mess started. They may look meaningless to you, but they might actually contain a wealth of useful information.  


* Don't attach the backtrace to the bug report. Instead, simply '''paste it'''. This way it is much easier for developers to search for duplicate reports, because attachments can not be searched.
* Don't attach the backtrace to the bug report. Instead, simply '''paste it'''. This way it is much easier for developers to search for duplicate reports, because attachments can not be searched.
{{note|If you are providing a backtrace in a report which does not belong to you, consider that the report could be unrelated to your crash, even when the symptoms are the same. In such cases, just attach the backtrace as a file, so the bug triagers can check it and say if it is the same crash or not}}
{{note|If you are providing a backtrace in a report which does not belong to you, consider that the report could be unrelated to your crash, even when the symptoms are the same. In such cases, just attach the backtrace as a file, so the bug triagers can check it and say if it is the same crash or not}}
Even though pasting backtraces directly is preferred over adding an attachment, please do not paste other things like logs (valgrind, strace or terminal output) or example data (mails, HTML files and so on). Use attachments for these items.
 
====Generating a new backtrace====
 
To generate a new backtrace you need the application to crash again.
This can be achieved repeating the same steps and situation that leaded to the original crash.
 
* Install the debug packages mentioned, prior to repeating the crash. (More information)
* Repeat the situation to reproduce the crash
The application crashes and the KDE Crash Handler dialog appears
* Click the "Developers Information" tab to fetch a new backtrace
* When finished, copy the backtrace and paste it inside the bug report
 
[[Image:CrashHandler-Drkonqi-kde43.png|400px|center|KDE 4.3 Crash Handler Dialog]]

Revision as of 22:07, 31 December 2009

Introduction

This document describes how to create useful bug reports for crashes of KDE applications.

How to create useful crash reports

A good crash report consists of two parts: a description of how to reproduce the crash and a backtrace of the crash. With any of those elements missing, it is very hard (if not impossible) for developers to tackle the problem.

Description

A useful description should contain everything that you were doing prior to the crash. It should not just say "it crashed".

Examples: Did you click on a button, did you open a particular website or file which caused problems? These little details, which may look useless to you, may be useful for the developers, so just write them down.

KDE Platform and Application's version

  • The KDE Platform version is an important detail that is often missing in bug reports.

If you do not know what KDE Platform version are you using, you can get it by selecting the "About KDE" option in the Help menu of every KDE application, or by running the command kde4-config --version in Konsole. You will get an output like this:

Qt: 4.6.0
KDE Development Platform: 4.4.0
kde4-config: 1.0
Note
The crash reporting assistant integrated in KDE 4.3 and later automatically includes the KDE version in your report.


A more insightful article on how to write good bug descriptions is available at this link, please read that before reporting bugs.

Application specific details

For several applications it can be useful to have specific details inside the bug reports:

  • Plasma Desktop: Plasmoids you have in your desktop (both official and unofficial), desktop settings (wallpaper plugin, themes), activities and dashboard configuration.
  • KWin (the windows manager): state of compositing(desktop effects): enabled / suspended / disabled, kind of effects enabled, window decoration.
  • Konqueror: Sites you were visiting, number of opened tabs, plugins you have installed, non-default settings.
  • Dolphin: file view mode, grouping and sorting settings, preview settings, directory you were browsing.
  • Kopete: IM protocols you use, plugins you use.
  • KMail: Mail protocols and account-types you use.
  • KWrite/Kate/KOffice: Type of the document you were editing.
  • Juk/Dragon/Amarok (multimedia players): Type of media (extension and format) you were watching and/or listening to.

Backtraces

Definition: A backtrace basically describes what was happening inside the application when it crashed, in a way that developers may track down where the mess started. They may look meaningless to you, but they might actually contain a wealth of useful information.

  • Don't attach the backtrace to the bug report. Instead, simply paste it. This way it is much easier for developers to search for duplicate reports, because attachments can not be searched.
Note
If you are providing a backtrace in a report which does not belong to you, consider that the report could be unrelated to your crash, even when the symptoms are the same. In such cases, just attach the backtrace as a file, so the bug triagers can check it and say if it is the same crash or not


Generating a new backtrace

To generate a new backtrace you need the application to crash again. This can be achieved repeating the same steps and situation that leaded to the original crash.

  • Install the debug packages mentioned, prior to repeating the crash. (More information)
  • Repeat the situation to reproduce the crash

The application crashes and the KDE Crash Handler dialog appears

  • Click the "Developers Information" tab to fetch a new backtrace
  • When finished, copy the backtrace and paste it inside the bug report
KDE 4.3 Crash Handler Dialog
KDE 4.3 Crash Handler Dialog