allow defining crashdb inline within the report

Bug #551330 reported by Martin Pool
This bug affects 1 person
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Fix Released
Martin Pitt

Bug Description

In an application like bzr we want to record crash files on every platform where apport is installed, Ubuntu or not. These reports are obviously not generally Ubuntu-specific and need to go into the upstream bug tracker (bugs.l.n/bzr). apport has a nice crashdb mechanism for defining this, but unfortunately it depends on having a crashdb definition installed into /etc/apport/crashdb.conf.d, which is a bit hard to do if the program is installed eg into the users's home directory or running from a checkout. <>

Furthermore, apport aborts if the crashdb referenced in the crash file is not known on the system.

It would be nice if all the information about where to file the report could be recorded at the time the report is written, so the application was more selfcontained.

One way to handle this would be to allow the impl/project/bug_pattern_base fields from the crashdb definition to also be taken from the crash report, eg "CrashDbImpl: launchpad". Then if there was a system-wide definition of the crashdb it could override them, but if there was not it would not be an error.

Tags: arb
Martin Pitt (pitti)
Changed in apport:
assignee: nobody → Martin Pitt (pitti)
importance: Undecided → Wishlist
status: New → Triaged
Martin Pitt (pitti)
affects: apport → apport (Ubuntu)
Martin Pitt (pitti)
tags: added: arb
Revision history for this message
Martin Pitt (pitti) wrote :

Fixed in trunk r2464. The CrashDB: field can now directly give the DB specification Python dictionary, i. e. what would otherwise go into the crashdb.conf.d/ snippet.

Changed in apport (Ubuntu):
status: Triaged → Fix Committed
Revision history for this message
Martin Pool (mbp) wrote : Re: [Bug 551330] Re: allow defining crashdb inline within the report

That's great, thanks pitti!

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apport - 2.5.1-0ubuntu1

apport (2.5.1-0ubuntu1) quantal; urgency=low

  * New upstream release:
    - Fix test for calling test runner with
      absolute path.
    - Fix crash on writing virtual_mapping.db when
      running with --sandbox-dir and -S system or giving no --cache.
    - Fix re-raising of exceptions in Python 3. Thanks Martin
      Packman! (LP: #1024836)
    - apport-retrace: Keep compressed CoreDump from .crash files instead of
      uncompressing them into memory. This dramatically reduces memory usage.
      (LP: #981155)
    - Add an apport.memdbg() function which prints out current memory usage if
      APPORT_MEMDEBUG is set. Annotate apport-retrace with it.
    - Allow specifying a list of profile names when using
      attach_mac_events(). Thanks Marc Deslauriers.
    -, attach_root_command_outputs() and root_command_output():
      Drop usage of sudo, kdesudo, and gksu, and replace with pkexec. For
      attach_root_command_outputs(), use a wrapper and proper .policy file
      which explains the action and works under every environment; thus
      attach_root_command_outputs() is preferred over root_command_output()
      now, as it provides a better user experience.
    - Package hooks which want to send the report to a different crash
      database than "default" can now also give the database specification
      itself in the "CrashDB" field, not just the DB name. With this, packages
      do not need to ship a separate /etc/apport/crashdb.conf.d/ file. Please
      see doc/package-hooks.txt for details. (LP: #551330)
    -, add_hooks_info(): If reporting against a package/program in
      /opt, also search for package hooks in the corresponding /opt directory.
      This allows such hooks to define a custom crash database and thus report
      bugs against their own project instead of against the distribution.
      (LP: #1020503)
  * debian/rules: Call dh_install with --list-missing, and ignore .pyc and
    .egg-info files.
  * debian/apport.install: Install new polkit .policy and root_info_wrapper
    files, and add policykit-1 Recommends.
  * debian/apport.install: Ship is-enabled script.
  * debian/apport-kde.install: Ship userpass.ui file.
  * Drop debian/apport-retrace.manpages and debian/apport.manpages and install
    the man pages from *.install instead. This works better with
  * debian/apport.install: Install 000record-status pm-utils script, to
    unbreak suspend failure detection.
 -- Martin Pitt <email address hidden> Wed, 22 Aug 2012 11:58:45 +0200

Changed in apport (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.