def _process(self, event):
"""Processes a raw event
Creates the proper salt event class wrapper and notifies listeners
Args:
event (dict): the raw event data
"""
logger.debug("Process event -> %s", event)
wrapper = None
if fnmatch.fnmatch(event['tag'], 'salt/job/*/new'):
wrapper = NewJobEvent(event)
for listener in self.listeners:
listener.handle_salt_event(wrapper)
listener.handle_new_job_event(wrapper)
elif fnmatch.fnmatch(event['tag'], 'salt/run/*/new'):
wrapper = NewRunnerEvent(event)
for listener in self.listeners:
listener.handle_salt_event(wrapper)
listener.handle_new_runner_event(wrapper)
elif fnmatch.fnmatch(event['tag'], 'salt/job/*/ret/*'):
wrapper = RetJobEvent(event)
for listener in self.listeners:
listener.handle_salt_event(wrapper)
listener.handle_ret_job_event(wrapper)
elif fnmatch.fnmatch(event['tag'], 'salt/run/*/ret'):
wrapper = RetRunnerEvent(event)
for listener in self.listeners:
listener.handle_salt_event(wrapper)
listener.handle_ret_runner_event(wrapper)
elif fnmatch.fnmatch(event['tag'], 'salt/state_result/*'):
wrapper = StateResultEvent(event)
for listener in self.listeners:
listener.handle_salt_event(wrapper)
listener.handle_state_result_event(wrapper)
评论列表
文章目录