Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1155790

Summary: neutron "update.start" notification causes ceilometer-notification-agent to raise KeyError
Product: Red Hat OpenStack Reporter: Eoghan Glynn <eglynn>
Component: openstack-ceilometerAssignee: Eoghan Glynn <eglynn>
Status: CLOSED ERRATA QA Contact: Amit Ugol <augol>
Severity: unspecified Docs Contact:
Priority: high    
Version: 5.0 (RHEL 7)CC: dnavale, jruzicka, pbrady, sclewis, scohen, yeylon
Target Milestone: z3Keywords: ZStream
Target Release: 5.0 (RHEL 7)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-ceilometer-2014.1.3-2.el7ost openstack-ceilometer-2014.1.3-2.el6ost Doc Type: Bug Fix
Doc Text:
The payload format of the 'update.start' notification from neutron was unexpected, resulting in ceilometer-notification-agent raising a KeyError when handling this notification. With this update, the notification handling logic is updated to reflect the actual notification format. As a result, the KeyError is no longer seen when this notification is received.
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-12-02 15:13:21 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Eoghan Glynn 2014-10-22 19:55:21 UTC
Description of problem:

When handling an "update.start" notification from neutron, ceilometer-notification-agent raise KeyError due to an inconsistent and unexpected payload format

(the "id" field is found in the message['payload'] as opposed to the message['payload'][resource])


Version-Release number of selected component (if applicable):

python-ceilometer-2014.1.3-1.el7ost.noarch
openstack-ceilometer-collector-2014.1.3-1.el7ost.noarch
openstack-ceilometer-central-2014.1.3-1.el7ost.noarch
openstack-ceilometer-alarm-2014.1.3-1.el7ost.noarch
openstack-ceilometer-notification-2014.1.3-1.el7ost.noarch
openstack-ceilometer-common-2014.1.3-1.el7ost.noarch
python-ceilometerclient-1.0.10-1.el7ost.noarch
openstack-ceilometer-api-2014.1.3-1.el7ost.noarch


How reproducible:

100%


Steps to Reproduce:
1. create a floatingip
2. use "nova floating-ip-associate" to associate the floatingip to a server


Actual results:


Errors are seen in the notification agent log:

2014-09-19 10:24:57.924 35876 TRACE stevedore.extension   File "/usr/lib/python2.7/site-packages/ceilometer/notification.py", line 164, in _process_notification_for_ext
2014-09-19 10:24:57.924 35876 TRACE stevedore.extension     p(list(ext.obj.to_samples(notification)))
2014-09-19 10:24:57.924 35876 TRACE stevedore.extension   File "/usr/lib/python2.7/site-packages/ceilometer/network/notifications.py", line 96, in process_notification
2014-09-19 10:24:57.924 35876 TRACE stevedore.extension     resource_id=message['payload']['id'],
2014-09-19 10:24:57.924 35876 TRACE stevedore.extension KeyError: 'id'


Expected results:

The notification should be consumable without errors.

Comment 1 Eoghan Glynn 2014-10-22 20:00:11 UTC
Fix proposed upstream to stable/icehouse:

  https://review.openstack.org/130341

Comment 2 Eoghan Glynn 2014-11-17 13:25:04 UTC
Merge to stable/icehouse upstream:

  https://github.com/openstack/ceilometer/commit/28f50275

Comment 12 Amit Ugol 2014-11-26 09:00:55 UTC
Fix is in place

Comment 14 errata-xmlrpc 2014-12-02 15:13:21 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2014-1936.html

Comment 15 Eoghan Glynn 2015-02-10 09:59:01 UTC
*** Bug 1155789 has been marked as a duplicate of this bug. ***