def run(self, event_name, event_result_q):
"""
Execute an individual event.
Success:
- return a result with 'success' = True
Failure:
- Raise an exception
- Timeout
- Return Result with 'success' = False
:param event_name:
:param event_result_q:
:return:
"""
event = self.events_dict[event_name]
try:
result = event.execute(event_results=self.event_results)
self.event_results.add(result)
except (Exception, Timeout) as e:
logger.error('%s', {
'message': 'event_execution_error',
'exception': e,
'event_name': event_name,
})
logger.error(traceback.format_exc())
return event_result_q.put(EVENT_RESULT.FAILURE)
event_result_q.put(result.success())
评论列表
文章目录