로그 및 JTL 파일 분석
로그 탭 이해하기
LoadFocus의 Logs 탭은 JMeter 테스트 에이전트의 원시 출력과 구조화된 요약 데이터를 제공합니다. 여기서 다음을 수행할 수 있습니다:
- 모든 테스트 아티팩트(원본 및 수정된 JMX, JTL 결과, JMeter 로그 파일)를 다운로드합니다.
- 스크롤 가능한 텍스트 패널에서 원시 JTL 요약을 검사합니다.
- 샘플 수준의 세부 정보를 고수준 Insights, Errors, Timeline 보기와 상관시킵니다.
테스트 파일 패널
왼쪽에 위치별(예: US East) Test files 목록이 표시됩니다. 각 파일 항목에는 다운로드 아이콘이 있습니다:
- 원본 .jmx 파일 실행 전에 업로드한 정확한 스크립트입니다.
- 수정된 .jmx 파일 LoadFocus에서 적용한 변경 사항(예: 주입된 리스너 또는 원격 엔진 설정)입니다.
- .jtl 파일 (JMeter 테스트 결과) 테스트의 전체 CSV/XML 결과입니다. 타임스탬프, 응답 시간, 응답 코드, 스레드 이름, 레이블 등이 포함됩니다.
- JMeter 로그 파일
각 엔진의
jmeter.log로, 경고, 오류 및 디버그 메시지를 캡처합니다.
JTL 요약 보기
중앙 패널은 JTL 파일의 축소된 보기를 보여줍니다. 각 줄은 단일 샘플러 결과에 해당합니다. 예시: <timeStamp>,<elapsed>,<label>,<responseCode>,<responseMessage>,<threadName>,<dataType>,<success>,<bytes>,<sentBytes>,<grpThreads>,<allThreads>,<URL>,<Latency>,<SampleCount>
timeStamp 샘플이 시작된 에포크 밀리초입니다.
elapsed 밀리초 단위의 응답 시간입니다.
label 샘플러 이름(예: "HTTP Request")입니다.
responseCode HTTP 상태 코드 또는 샘플러 반환 코드입니다.
success 통과/실패를 나타내는 true/false 플래그입니다.
bytes 수신된 페이로드 크기(바이트)입니다.
URL 대상 엔드포인트 URL입니다.
Latency 첫 번째 바이트까지의 시간(밀리초)입니다.
SampleCount 이 항목이 나타내는 샘플 수(보통 1)입니다.
로그 데이터 사용 방법
- JTL 다운로드.jtl file 옆의 다운로드 아이콘을 클릭하여 오프라인 분석을 위한 전체 결과 세트를 가져옵니다.
- 외부 도구에서 열기 CSV/XML을 Excel, Grafana 또는 선호하는 로그 분석 플랫폼에 가져와 피벗, 차트 및 필터링합니다.
- 검색 및 필터
편집기의 검색 기능을 사용하여(예:
success열에서false검색) 실패를 분리합니다. - 타임스탬프와 상관관계 JTL 타임스탬프를 Timeline 또는 Engine Health 차트와 매칭하여 그 시점에 무슨 일이 있었는지 확인합니다.
- JMeter 로그 검토
JTL에서 비정상적인 오류가 보이면
jmeter.log를 다운로드하고 검사하여 스택 트레이스, GC 일시 중지 또는 플러그인 오류를 확인합니다.
모범 사례
- JTL 크기를 관리 가능하게 유지
매우 대규모 실행의 경우, JMeter의 샘플 필터를 활성화하거나
--loglevel.jmeter=ERROR를 사용하여 로그의 노이즈를 줄입니다. - 외부 시각화 사용 InfluxDB + Grafana 또는 Apache Superset와 같은 도구는 원시 JTL 데이터를 대화형 대시보드로 변환할 수 있습니다.
- 타임스탬프 정렬 JTL 타임스탬프가 다른 메트릭과 정렬되도록 로컬 시계와 에이전트 시계가 동기화(NTP)되었는지 확인합니다.
- 결과 보관 감사 가능성과 회귀 추적을 위해 JTL 및 로그 파일을 테스트 구성과 함께 저장합니다.
결론
LoadFocus의 로그 및 JTL 파일 분석 보기는 원시 및 구조화된 테스트 결과에 대한 완전한 접근을 제공합니다. JMeter 아티팩트를 다운로드하고 검사하면 모든 샘플, 오류 및 시스템 이벤트를 상관시켜 성능 문제의 근본 원인을 밝혀내는 심층 포렌식 분석을 수행할 수 있습니다.