Você pode fazer isso com:
grep "error_has_happened" -A3 logfile.log
Onde 3, é o número de linhas após a ocorrência error_has_happened que será mostrada. No entanto, isso também mostrará outras saídas do processo, não apenas as saídas do processo que envia o erro.
Um comando mais elaborado que funcionou para mim em um teste rápido é:
grep "error_has_happened" logfile.log | cut -d : -f1 | sort -u |
while IFS= read -r process; do
grep "^$process:" logfile.log |
grep -A3 "error_has_happened"
done