Hello experts,
logs looks something like this..
(java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException:...
null\n\njava.lang.IllegalArgumentException
: java.util.concurrent.ExecutionException..
( java.util.concurrent.ExecutionException)
" java.util.concurrent.ExecutionException"
query should ignore the special characters before java and take only exception.
example: query should find "java.lang.IllegalArgumentException" from this log line "null\n\njava.lang.IllegalArgumentException".
I am able to pull exceptions which are not associated with special characters using rex "(?java?.[.\w]+Exception)" but
thanks
can you please provide full sample events and output you want?
Hello!
Try this run anywhere search
| makeresults
| eval _raw="null\n\njava.lang.IllegalArgumentException
: java.util.concurrent.ExecutionException..
( java.util.concurrent.ExecutionException)
\" java.util.concurrent.ExecutionException\""
| rex field=_raw max_match=0 "(?<javaexception>java?.[.\w]+Exception)"
You can try something like this
| rex field=_raw (?<javaexception>java?.[.\w]+Exception)
OR
| rex field=_raw (?<javaexception>java.*Exception)
ddint work. its not correct.
I edited my answer. did you check?
Also, if its not correct can you elaborate by giving sample inputs and what output you want
Try this run anywhere search
| makeresults
| eval _raw="null\n\njava.lang.IllegalArgumentException
: java.util.concurrent.ExecutionException..
( java.util.concurrent.ExecutionException)
\" java.util.concurrent.ExecutionException\""
| rex field=_raw max_match=0 "(?<java>(\S+|)java.\w+.*Exception)"
no rex command is still not working.
Can you please send me one full event? Also, please send the search query you're using.
For this, you need to use max_match=0
in the rex expression.
Use this query
rex field=_raw max_match=0 "(?<java>(\S+|)java.\w+.*Exception)"