2
0
mirror of https://github.com/xcat2/confluent.git synced 2025-04-21 20:45:53 +00:00

Add 'record_id' field to events

Provide method for plugins to pass through through an event identifier for
entries in the log.
This commit is contained in:
Jarrod Johnson 2015-06-11 09:35:52 -04:00
parent fefe1dc9e8
commit 3d5fa74f4f
2 changed files with 8 additions and 3 deletions

View File

@ -565,6 +565,7 @@ class EventCollection(ConfluentMessage):
'event': event.get('event', None),
'severity': event['severity'],
'timestamp': event.get('timestamp', None),
'record_id': event.get('record_id', None),
}
if event['severity'] not in valid_health_values:
raise exc.NotImplementedException(

View File

@ -256,6 +256,7 @@ def perform_request(operator, node, element,
results.put(msg.ConfluentTargetTimeout(node))
else:
results.put(msg.ConfluentNodeError(node, excmsg))
raise
except exc.TargetEndpointUnreachable as tu:
results.put(msg.ConfluentTargetTimeout(node, str(tu)))
except Exception as e:
@ -402,12 +403,13 @@ class IpmiHandler(object):
def do_eventlog(self):
eventout = []
for event in self.ipmicmd.get_event_log():
event['severity'] = _str_health(event['severity'])
event['severity'] = _str_health(event.get('severity'), 'unknown')
if 'event_data' in event:
event['event'] = '{0} - {1}'.format(
event['event'], event['event_data'])
event['id'] = '{0}.{1}'.format(event['event_id'],
event['component_type_id'])
if 'event_id' in event:
event['id'] = '{0}.{1}'.format(event['event_id'],
event['component_type_id'])
eventout.append(event)
self.output.put(msg.EventCollection(eventout, name=self.node))
@ -598,6 +600,8 @@ class IpmiHandler(object):
def _str_health(health):
if health == 'unknown':
return health
if pygconstants.Health.Failed & health:
health = 'failed'
elif pygconstants.Health.Critical & health: