oopses not published when not using fallback_chain

Bug #1267055 reported by Michael Nelson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
python-oops-dictconfig
Fix Committed
High
Michael Nelson

Bug Description

Steps to reproduce:
 1. Use standard configglue syntax to specify a single publisher without any fallbacks [1]
 2. View your settings and that your settings now include default values for other items, specificaly fallback_chain=[] [2]
 3. Run your app and cause an oops

Result: oops isn't written to disk.

AFAICT, the reason is that in oops_dictconfig.dictconfig.config_from_dict(), the presence of the fallback_chain key causes the publish method to be created from the (empty) fallback chain, rather than from the publisher defn.

[1] http://paste.ubuntu.com/6714019/
[2] Eg:
$ ./manage.py settings oopses
OOPSES = {'publishers': [{'inherit_id': False, 'error_dir': '/tmp/my-oopses', 'exchange_name': '', 'routing_key': '', 'vhost': '', 'host': '', 'user': '', 'new_only': False, 'password': '', 'type': 'datedir', 'fallback_chain': []}], 'template': {'reporter': 'DEV'}}

Related branches

Revision history for this message
Michael Nelson (michael.nelson) wrote :

BTW, the only work-around I could see was to use json for the oopses setting in my configglue config (ie. so it specifically doesn't contain default values for unspecified config options.)

James Westby (james-w)
Changed in python-oops-dictconfig:
status: New → In Progress
importance: Undecided → High
assignee: nobody → Michael Nelson (michael.nelson)
Changed in python-oops-dictconfig:
status: In Progress → Fix Committed
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.