def from_orch_error(self, e: OrchestratorError) -> None: if e.event_subject is not None: self.add(OrchestratorEvent( datetime_now(), e.event_subject[0], e.event_subject[1], "ERROR", str(e) ))
def add(self, event: OrchestratorEvent) -> None: if event.kind_subject() not in self.events: self.events[event.kind_subject()] = [event] for e in self.events[event.kind_subject()]: if e.message == event.message: return self.events[event.kind_subject()].append(event) # limit to five events for now. self.events[event.kind_subject()] = self.events[event.kind_subject()][-5:]
def for_daemon(self, daemon_name: str, level: str, message: str) -> None: e = OrchestratorEvent(datetime_now(), 'daemon', daemon_name, level, message) self.add(e)
def for_service(self, spec: ServiceSpec, level: str, message: str) -> None: e = OrchestratorEvent(datetime_now(), 'service', spec.service_name(), level, message) self.add(e)
def for_daemon(self, daemon_name, level, message): e = OrchestratorEvent(datetime.datetime.utcnow(), 'daemon', daemon_name, level, message) self.add(e)