Aquí es una expresión GREP rápido y sucio-... si está utilizando un registrador como log4j que la primera línea de la excepción contendrá generalmente WARN
o ERROR
, la siguiente línea contendrá la excepción nombre, y, opcionalmente, un mensaje, y después el posterior seguimiento de la pila se iniciará con una de las siguientes:
"\tat"
(pestaña + a)
"Caused by: "
"\t... <some number> more"
(éstas son las líneas que indican el número de cuadros en la pila no se muestra en un "causado por" excepción)
- Un nombre de Excepción (y tal vez el mensaje) antes de la pila
Queremos conseguir todo de las líneas anteriores, por lo que la expresión gREP es:
grep -P "(WARN|ERROR|^\tat |Exception|^Caused by: |\t... \d+ more)"
asume una clase de excepción siempre contiene la palabra Exception
que puede o no puede ser cierto, pero esto es rápido y sucio después de todo.
Ajuste según sea necesario para su caso específico.
¿Por qué tiene tantos rastros de pila en su registro? ¿Estás registrando excepciones a la izquierda y a la derecha? ¿Estás seguro de que es una buena idea? – sleske
Eso es un registro de una prueba de rendimiento y ciertas partes del sistema fallan bajo presión. Lo que quiero lograr es un informe simpe sobre dónde y qué excepciones ocurrieron durante la ejecución. –
Puede haber una excepción en 1 día o puede haber 1000 excepciones en un minuto. La cantidad de excepciones no está determinada por la cantidad de registros. –