def _post_santa_events(event_cls, msn, user_agent, ip, payloads): metadata = EventMetadata(event_cls.event_type, machine_serial_number=msn, request=EventRequest(user_agent, ip)) for index, payload in enumerate(payloads): metadata.index = index event = event_cls(metadata, payload) event.post()
def post_munki_events(msn, user_agent, ip, data): for report in data: events = report.pop("events") metadata = EventMetadata(MunkiEvent.event_type, machine_serial_number=msn, request=EventRequest(user_agent, ip)) for index, (created_at, payload) in enumerate(events): metadata.index = index metadata.created_at = parser.parse(created_at) payload.update(report) event = MunkiEvent(metadata, payload) event.post()
def post_events_from_osquery_log(msn, user_agent, ip, data): if data["log_type"] == "status": event_cls = OsqueryStatusEvent payloads = _payloads_from_osquery_status(data) elif data["log_type"] == "result": event_cls = OsqueryResultEvent payloads = _payloads_from_osquery_result(data) else: raise NotImplementedError("Unknown log type.") metadata = EventMetadata(event_cls.event_type, machine_serial_number=msn, request=EventRequest(user_agent, ip)) for index, payload in enumerate(payloads): metadata.index = index event = event_cls(metadata, payload) event.post()