현재 우리는 비 GUI 모드에서 실행되는 Linux VM에서 JMETER를 통해 스크립트를 실행합니다. JMETER 테스트가 실행되면 결과가 출력 파일(JTL 파일)로 전송됩니다. 그런 다음 이 파일을 로컬 Windows 시스템에 복사하고 JTL을 CSV로 변환하여 문제 해결을 더 쉽게 만듭니다.
내가 원하는 것은 생성된 JTL 파일을 검색하고 오류를 찾는 것입니다(이러한 오류는 (400, Bad Request)로 식별됨). 아래 코드 조각은 실패한 JTL 파일의 예제 줄입니다.
1613036683919,43,Document has failed,400,Bad Request,Thread Group 1-1,text,false,,3844,1159,1,1
내가 원하는 것은 파일에서 잘못된 요청 오류를 검색하고 다음과 같이 전체 줄 대신 줄의 일부만 추가하는 예제로 grep을 사용하는 것입니다.
,Document has failed,400,Bad Request
참고: 실패한 문서는 테스트마다 변경되지만 텍스트는 항상 쉼표로 묶입니다.
나는 이것을 다른 테스트를 위해 추가할 수 있는 Error.txt 파일에 추가하고 모든 것이 완료되면 전체 결과를 이메일로 받기를 원합니다.
JTL의 주요 부분에서 오류를 확인하는 기본 grep 스크립트가 있습니다.
grep ,400, Test.jtl > Error.txt
이메일을 통해 파일을 보낼 수 있는 스크립트가 있습니다.
어떤 도움이라도 대단히 감사하겠습니다.
답변1
전체 문자열을 포함하도록 정규식을 확장하고 -o
일치하는 항목만 인쇄하려면 이 옵션을 사용합니다. 읽다 man grep
.
grep -E -o ',[^,]+,400,Bad Request' Test.jtl