Ceilometer Agent Notification: process_notification jsonpath error in the logs in
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ceilometer |
New
|
Undecided
|
Unassigned |
Bug Description
In Ceilometer Agent Notification Logs see this exception (stable/rocky)
(ceilometer.
Traceback (most recent call last):
File "/usr/lib/
p(list(
File "/usr/lib/
for s in d.to_samples(
File "/usr/lib/
value = parser.
File "/usr/lib/
values = self.getter(obj)
File "/usr/lib/
for subdata in self.left.
File "/usr/lib/
for submatch in self.right.
File "/usr/lib/
return [DatumInContext
KeyError: 0
It appears due to a mismatch in the notification payload and jsonpath expression specified to pull the data from raw notificaion that is specified in ceilometer/
summary: |
- Ceilometer Agent Notifcation: jsonpath error in the logs in - process_notification + Ceilometer Agent Notification: process_notification jsonpath error in + the logs in |
I encountered the same issue. In some conditions, the type of datum.value is dict instead of list.
I have below temporary fix in my environment, but not sure if it will break something.
444c444,447 (datum. value[self. index], path=self, context=datum)] (datum. value[self. index], path=self, context=datum)] (datum. value, path=self, context=datum)]
< return [DatumInContext
---
> if type(datum.value) == list:
> return [DatumInContext
> else:
> return [DatumInContext