Reporting to CentOSBT - abrt/libreport GitHub Wiki

Configure MantisBT

To ensure the proper functionality of the reporter-mantisbt it is need to configure MantisBT. It is necessary to have the latest version of the MantisBT with SOAP API methods which allows searching within issues. The next step is to define two custom fields.

Installing mantisbt-1.2.18

* Apply the patch In mantisbt root directory run:

 $ patch -p1 -i abrt-mantisbt-1.2.18.patch

Installing mantisbt-1.3.beta.3

The first way is install the latest version of MantisBT from github repository: https://github.com/mantisbt/mantisbt

The second way (the easier one for me) is download a developer version of the MantisBT: http://sourceforge.net/projects/mantisbt/files/mantis-development/1.3.0-beta.3/

Install the developer version: https://github.com/abrt/libreport/wiki/Installing-MantisBT

Note: mantisbt-1.3.beta.3 has already contain required SOAP API changes

Add the custom fields

Another thing that needs to be done is adding two custom fields (abrt_hash and URL). Custom field can be defined in Manage section in the MantisBT (Manage->Manage Custom Field). Both of the fields are string type.

For more details why the fields need to be added, their meaning etc. see https://github.com/abrt/libreport/wiki/MantisBT#how-the-reporter-bugzilla-works

abrt-centos

The latest version of the ABRT CentOS reporting plugin (for CentOS-7) is available in the following repo: https://copr.fedoraproject.org/coprs/mhabrnal/abrt-centos/repo/epel-7/mhabrnal-abrt-centos-epel-7.repo

Note: It's necessary to define following in `/etc/os-release`:

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
CENTOS_MANTISBT_PROJECT and CENTOS_MANTISBT_PROJECT_VERSION specifies project and project version in MantisBT. It can be defined in /etc/libreport/plugins/mantisbt.conf (configuration options: Project, ProjectVersion).

REDHAT_SUPPORT_PRODUCT and REDHAT_SUPPORT_PRODUCT_VERSION says to retrace server which OS and OS version your box is. (for more details about retrace server see https://fedorahosted.org/abrt/wiki/AbrtRetraceServer)

Workflow for reporting

If an user reports a crash (either via gnome-abrt or abrt-cli report) the workflow is the following:

  1. the reporting client sends a uReport [1] to FAF server (http://retrace.fedoraproject.org/faf/) [2] - the FAF server returns whether the crash has already been reported and also might return some kind of a solution text. (For example http://bugs.centos.org/view.php?id=8290).
  2. the reporting client checks the response from the FAF server - the reporting client displays the information returned from the FAF server to the reporter and terminates the reporting process in case there is a bug report for the crash; otherwise the process continues with the 3rd step
  3. the reporter via the reporting client generates backtrace from coredump
  1. the reporting client sends coredump to retrace server (http://retrace.fedoraproject.org/) [3] - the Retrace server sends backtrace back to the reporter's machine
  2. the reporting client downloads all required debuginfo packages to the reporter's machine (it might be GiBs of data) and generates backtrace locally
  1. the reporter manually reviews the crash data and gives the reporting client an explicit permission to publish it - the reporting client provides the report with the tools to simplify this task for him
  2. the reporter via the reporting client reports the crash to CentOS Bug Tracker (http://bugs.centos.org/) [4] - the reporting client creates a new issue in the bug tracking system. If a duplicate issue exists, the reporting client adds a note to the original issue instead (attach a "better" backtrace if available). The duplicate case can happen only if there was a problem on the FAF server.

For more detailed information see https://github.com/abrt/abrt/wiki/ABRT-workflow.

How to test reporting

In the case the abrt isn't installed you can do it as follow

$ sudo yum install abrt-desktop

or for usage abrt from command line as follow

$ sudo yum install abrt-cli
  • generate an artificial crash
    $ sleep 1000 &
    $ kill -SIGSEGV %%
  • wait until a notification bubble appears
  • run gnome-abrt or find Automatic Bug Reporting Tool in the list of applications
  • update URL to the bug tracker server that runs the required version of MantisBT
    Prefereces -> CentOS Bug Tracker -> Configure -> Advanced -> CentOS Bug Tracker URL
  • single out the problem entry in the left panel and click the Report button
  • a new window should appear and you should see two buttons

    • Report to CentOS Bug Tracker

    - Report to Red Hat Customer Portal

    If you want to get rid of the second button and start reporting to CentOS Bug Tracker immediately, remove libreport-rhel package
  • click the first button and follow the instruction in the reporting window
  • that's all :)
⚠️ **GitHub.com Fallback** ⚠️