I have just installed ELK, got my first data into to it, done a bit of grokking and "kv"..ing. I am however an absolute noob and the problem is more complex than can be solved with this. So what I am looking for is generic advice on the best way to proceed with complex logs. you can take a look at sample logs if you so wish. key values don't really work in all cases. I googled around and found this construct
grok {break_on_match => true
match => ["message", "pattern1",
"message", "pattern2",
"message", "pattern3"
] }
followed by if [message] =~ sequences to further parse the nonsense from sophos
Is this a sensible approach or are there better ways?