Que tal um script sed com gotos (shock, horror)? Isso poderia ser simplificado se você descreva seus dados com mais precisão.
sed -n '
:start
/Server .* Health Check/{
n
/Date - Count/n
:loop1
/ : /{p; n; b loop1
}
b start
}
/Errors caused by/{
n
:loop2
/Server/n
/^[0-9]/{p; n; b loop2
}
b start
}
'
O script reconhece o primeiro estilo de cabeçalho e insere a parte {}. isto lê a próxima linha (n) e se for o cabeçalho Data, lê outra linha. Se a linha corresponder à linha de estilo ":" (/: /), ela entra na parte {} que imprime a linha (p), lê a próxima linha (n) e ramifica (b) para rotular loop1. Quando não houver mais linhas correspondentes, ela se ramifica para o início da etiqueta.
O mesmo acontece quando o segundo estilo de cabeçalho é visto.