- # -B1 will collect one line before the match, and -A2 will collect two lines after the match. We really only
- # need the ROBOT match, but in order to keep the context of the Exception matches we want to collect and have
- # the ROBOT logs in the right place, we have to live with it.
- grep -A2 -B1 -E '(ROBOT|Exception$|Exception:|Exception{)' ${NODE_FOLDER}/odl${i}_karaf.log > ${NODE_FOLDER}/odl${i}_exception.log
+ # Print ROBOT lines and print Exception lines. For exception lines also print the previous line for context
+ sed -n -e '/ROBOT MESSAGE/P' -e '$!N;/Exception/P;D' ${NODE_FOLDER}/odl${i}_karaf.log > ${NODE_FOLDER}/odl${i}_exception.log