that's what my filter is currently looking like by the way:
filter {
xml {
source => "message"
target => "[theXML]"
store_xml => true
remove_namespaces => true
force_array => false
remove_field => ["message"]
}
ruby {
path => '/home/christiane/splitData.rb'
script_params => {field => "[theXML][Event]" target => "[theXML][Event]"}
}
# ruby {
# code => '
# e = event.get("[theXML][Event][EventData][Data]")
# if e.kind_of?(Array)
# e.each { |x|
# event.set(x["Name"], x["content"])
# }
# else
# event.set(e["Name"], e["content"])
# end
# '
# }
# mutate {
# copy => {
# "[theXML][Event][System][Provider]" => "Provider"
# "[theXML][Event][System][EventID]" => "EventID"
# "[theXML][Event][System][Version]" => "Version"
# "[theXML][Event][System][Level]" => "Level"
# "[theXML][Event][System][Task]" => "Task"
# "[theXML][Event][System][Opcode]" => "Opcode"
# "[theXML][Event][System][Keywords]" => "Keywords"
# "[theXML][Event][System][TimeCreated]" => "TimeCreated"
# "[theXML][Event][System][TimeCreated][SystemTime]" => "SystemTime"
# "[theXML][Event][System][EventRecordID]" => "EventRecordID"
# "[theXML][Event][System][Correlation]" => "Correlation"
# "[theXML][Event][System][Execution]" => "Execution"
# "[theXML][Event][System][Channel]" => "Channel"
# "[theXML][Event][System][Computer]" => "Computer"
# "[theXML][Event][System][Security]" => "Security"
# }
# }
date {
match => ["[theXML][Event][System][TimeCreated][SystemTime]", "YYYY-MM-dd HH:mm:s$
timezone => "Europe/Berlin"
}
}