[MODEL: dataset=semperis_dsp_raw] filter _raw_log ~= "\[OperationLog\@" | alter get_ip = arraystring(regextract(_raw_log, "\[OperationSource\]\s+(\S+):\S+"), ""), get_outcome = arraystring(regextract(_raw_log, "\[OperationResult\]\s+([^\[]+)\s"), "") | alter src_ip_v4 = if(get_ip !~= ":", get_ip, null), src_ip_v6 = if(get_ip ~= ":", get_ip, null) | alter xdm.event.type = arraystring(regextract(_raw_log, "\[OperationLog\@"), ""), xdm.source.ipv4 = src_ip_v4, xdm.source.ipv6 = src_ip_v6, xdm.event.outcome = if(get_outcome ~= "[s|S]uccess", XDM_CONST.OUTCOME_SUCCESS, get_outcome ~= "[a|A]ccess denied", XDM_CONST.OUTCOME_FAILED, get_outcome ~= "[E|e]rror", XDM_CONST.OUTCOME_PARTIAL, to_string(get_outcome)), xdm.event.outcome_reason = get_outcome, xdm.event.original_event_type = arraystring(regextract(_raw_log, "\[OperationType\]\s+([^\[]+)\s"), ""), xdm.event.operation_sub_type = arraystring(regextract(_raw_log, "\[RequestedAction\]\s+([^\[]+)\s"), ""), xdm.observer.type = arraystring(regextract(_raw_log, "\[OperationTarget\]\s+([^\[]+)\s"), ""), xdm.intermediate.user.username = arraystring(regextract(_raw_log, "\[TrusteeName\]\s+([^\[]+)\s"), ""), xdm.source.application.name = arraystring(regextract(_raw_log, "\[OperationSource\]\s+\S+:(\S+)"), ""); filter _raw_log ~= "\[AdChanges\@" | alter get_DistinguishedName = arraystring(regextract(_raw_log, "\[DistinguishedName\]\s+([^\[]+)\s"), ""), get_ClassName = arraystring(regextract(_raw_log, "\[ClassName\]\s+([^\[]+)\s"), ""), get_AttributeName = arraystring(regextract(_raw_log, "\[AttributeName\]\s+([^\[]+)\s"), "") | alter xdm.event.type = arraystring(regextract(_raw_log, "\[AdChanges\@"), ""), xdm.target.host.device_id = arraystring(regextract(_raw_log, "\[ForestId\]\s+([^\[]+)\s"), ""), xdm.event.id = arraystring(regextract(_raw_log, "\[ChangeId\]\s+([^\[]+)\s"), ""), xdm.intermediate.host.hostname = arraystring(regextract(_raw_log, "\[PartitionNamingContext\]\s+([^\[]+)\s"), ""), xdm.target.user.username = arraystring(regextract(get_DistinguishedName, "CN=([^\,]+)"), ""), xdm.target.user.ou = arraystring(regextract(get_DistinguishedName, "OU=([^\,]+)"), " "), xdm.target.user.domain = arraystring(regextract(get_DistinguishedName, "DC=([^\,]+)"), "."), xdm.target.resource.parent_id = get_ClassName, xdm.target.resource.id = get_AttributeName, xdm.target.resource.name = get_ClassName + "." + get_AttributeName, xdm.event.operation = arraystring(regextract(_raw_log, "\[ObjectModificationType\]\s+([^\[]+)\s"), ""), xdm.network.ldap.attributes = arraycreate(get_DistinguishedName), xdm.event.original_event_type = arraystring(regextract(_raw_log, "\[AttributeModificationType\]\s+([^\[]+)\s"), ""), xdm.target.domain = arraystring(regextract(_raw_log, "\[LinkedValueDN\]\s+([^\[]+)\s"), ""), xdm.target.host.hostname = arraystring(regextract(_raw_log, "\[OriginatingServer\]\s+([^\[]+)\s"), ""), xdm.source.user.username = arraystring(regextract(_raw_log, "\[OriginatingUsers\]\s+([^\[]+)\s"), ""), xdm.source.host.hostname = arraystring(regextract(_raw_log, "\[OriginatingUserWorkstations\]\s+([^\[]+)\s"), ""), xdm.target.resource_before.value = arraystring(regextract(_raw_log, "\[StringValueFrom\]\s+([^\[]+)\s"), ""), xdm.target.resource.value = arraystring(regextract(_raw_log, "\[StringValueTo\]\s+([^\[]+)"), "");