9.4.  Automatic Bug Reporting Tool (ABRT)

As of Red Hat Enterprise Linux 6.6, the Automatic Bug Reporting Tool (ABRT) has been updated to version 2. This update removes several limitations , but involves a number of changes to configuration and behavior.
Problem data, such as that pertaining to a crash, is no longer stored in a database. This information is now stored only as files in a problem data directory. As a result, the /etc/abrt/abrt.conf configuration file has been simplified, and some configuration directives are now obsolete, or specified in other locations.
  • The OpenGPGCheck, BlackList, ProcessUnpackaged, and BlackListedPaths directives are no longer specified in /etc/abrt/abrt.conf. Instead, they are specified in the /etc/abrt/abrt-action-save-package-data.conf file.
  • The Database directive is no longer required or supported.
  • The ActionsandReporters directive has been replaced by the post-create event. For further information about events in ABRT 2, see Section 9.4.1, “ABRT Events”.
  • The [AnalyzerActionsAndReporters] section of the abrt.conf file is now obsolete. The directives that were previously configured in this section (Kerneloops, CCpp, and Python) have been replaced by the analyze_* and the report_* events. For further information about events in ABRT 2, see Section 9.4.1, “ABRT Events”.
  • The functionality of the C/C++ hook has been replaced with the abrt-ccpp service, except for the ReadonlyLocalDebugInfoDirs directive, which has not yet been ported.
  • The functionality of the Python hook has been replaced with the abrt-addon-python package.
  • The functionality of the kernel oops hook has been replaced with the abrt-oops service and the related abrt-dump-oops and abrt-action-kerneloops commands.
ABRT provides a number of commands to provide flexible automated reporting of problem data, including the following.
reporter-bugzilla
Checks for bugs with the same ABRT hash as the specified problem data directory and comments on an existing bug, or creates a new bug, as appropriate. This command requires the libreport-plugin-bugzilla package in addition to the default package.
reporter-kerneloops
Reports kernel oops to an appropriate site. This command requires the libreport-plugin-kerneloops package in addition to the default package.
reporter-mailx
Sends the contents of a problem data directory using email. This command requires the libreport-plugin-mailx plug-in in addition to the default package.
reporter-print
Prints problem data to standard output or a specified file. This command requires the libreport-plugin-logger package in addition to the default package.
reporter-rhtsupport
Reports problem data to RHT Support. This command requires the libreport-plugin-rhtsupport plug-in in addition to the default package.
reporter-upload
Uploads a tarball of the problem data directory to a specified URL. This command requires the libreport-plugin-reportuploader package in addition to the default package.

9.4.1. ABRT Events

ABRT 2 adds configurable events to the ABRT workflow. Events are triggered when problem data is recorded. They specify actions to perform on problem data and can be used to modify how data is analyzed or to specify a location to which data should be uploaded. You can also have events run only on problem data with certain characteristics.
Event configuration files are stored in the /etc/libreport/events.d directory. They contain the following:
Event name
The name of the event being triggered. This is the first argument of the EVENT parameter. For example, the following event configuration file contains an event called report_Bugzilla.
EVENT=report_Bugzilla analyzer=Python
   reporter-bugzilla -c /etc/libreport/plugins/Bugzilla.conf
Conditions
The conditions that must be matched by the problem data for the event to be triggered on that problem data. In this case, the following event is triggered only if the problem data directory contains an analyzer file that contains a value of Python.
EVENT=report_Bugzilla analyzer=Python
   reporter-bugzilla -c /etc/libreport/plugins/Bugzilla.conf
Actions
The actions that are performed on the problem data when this event is run. In this case, the reporter-bugzilla command is run.
EVENT=report_Bugzilla analyzer=Python
   reporter-bugzilla -c /etc/libreport/plugins/Bugzilla.conf
For further details, see the man page:
$ man report_event.conf