I encounter some problems today on working for a parser, I created a custom parser for meet my customer needs and added some additional fields.
I've got this pattern:
I think someone already asked the same question in the community here that would pull out the two IP's. Let me find it.
Thank you, let me know if you find it!
The pattern for additional field arrays is a little bit different then using string_value - it uses additional_field.value.list_value. Below is an example with an array of integers. That said perhaps it's just better to merge the IPs in noun.ip and that could meet your purpose.
filter { json { source => "message" array_function => "split_columns" } mutate { replace => { "additional_field.key" => "hits" "udm.metadata.event_type" => "GENERIC_EVENT" } } for hit in hits { mutate { replace => { "value.string_value" => "%{hit}" } } mutate { merge => { "list_value.values" => "value" } } mutate { remove_field => ["value"] } } mutate { rename =>{ "list_value" => "additional_field.value.list_value" } } mutate { merge => { "udm.additional.fields" => "additional_field" } } mutate { rename => { "udm" => "event.idm.read_only_udm" } } mutate { merge => { "@output" => "event" } } }