Вот быстрый и грязный выражение Grep ... если вы используете регистратор, таких как log4j, чем в первой строке, за исключением, как правило, содержат WARN
или ERROR
, следующая строка будет содержать Exception имя, и, возможно, сообщение, а затем последующие трассировки стека будет начинаться с одной из следующих функций:
"\tat"
(табл + в)
"Caused by: "
"\t... <some number> more"
(это линии, которые указывают на количество кадров в стеке не показано в «Вызванный» исключением)
- имя Exception (и, возможно, сообщение) до стека
Мы хотим, чтобы все из приведенных выше строк, поэтому выражение Grep является:
grep -P "(WARN|ERROR|^\tat |Exception|^Caused by: |\t... \d+ more)"
это предполагает класс Exception всегда содержит слово Exception
, которое может или не может быть правдой, но это быстро и грязный в конце концов.
При необходимости отрегулируйте свой конкретный случай.
Почему у вас столько следов стека в вашем журнале? Вы регистрируете исключения слева и справа? Вы уверены, что это хорошая идея? – sleske
Это журнал теста производительности, и некоторые части системы терпят неудачу под давлением. То, что я хочу достичь, - это отчет о симе, где и какие исключения произошли во время работы. –
Это может быть одно исключение, произошедшее за 1 день, или это может быть 1000 исключений, произошедших за одну минуту. Количество исключений не определяется количеством журналов. –