CHAP 05. scouter XLog
자바 트러블슈팅: scouter를 활용한 시스템 장애 진단 및 해결 노하우를 챕터 5을 요약한 내용입니다.
Last updated
자바 트러블슈팅: scouter를 활용한 시스템 장애 진단 및 해결 노하우를 챕터 5을 요약한 내용입니다.
Last updated
scouter에서의 XLog는 중요하고 아주 큰 역할을 한다. 왜냐하면 각각의 트랜잭션을 분석하고 시스템의 전반적인 상황을 한눈에 볼 수 있는 산포도(scatter chart)이기 때문이다.
https://chanchan-father.tistory.com/219
하나의 점은 하나의 요청을 의미한다. 그래서 이 점들이 어떻게 분포되어 있는지에 따라서 그 서비스가 안정적인지 불안정한 상태인지를 확인할 수 있다. 안정적인 서비스일 수록 점들은 아래쪽에 깔려 있게 된다.
응답 시간의 점이 찍힌다는 것은 사용자에게 응답이 끝나야지만 가능하다. 정확히는 마지막 바이트까지 응답하여 요청이 끝났을 때 점이 찍힌다.
분포된 점들을 마우스로 드래그 하게 되면 해당 요청에 대한 상세한 여러 정보들을 확인할 수 있다.
CPU : CPU를 점유한 시간, 단위 밀리초
SQL Count : SQL 수행 개수, 단위 개수
SQL Time : SQL 수행 시간, 단위 밀리초
API Count: API 호출 개수, 단위 개수
API Time : API 수행 시간, 단위 밀리초
KBytes : 요청을 처리하는 데 사용한 메모리의 양, 단위 킬로바이트
txid : 트랜잭션 ID
objName : 호스트/인스턴스 이름
thread : 수행한 스레드
endtime : 요청 종료 시간
elapsed : 수행 시간
service : 요청 URL
ipaddr : 호출한 서버/클라이언트의 IP 및 scouter 사용자 ID
cpu : CPU 점유 시간 및 요청 처리 시 사용한 메모리 크기
sqlCount : SQL 개수 및 시간
userAgent : 호출한 클라이언트의 종류
group : 요청 그룹
profileSize : 프로파일 크기
메서드 프로파일링 기능을 사용하면 더 자세하게 분석할 수 있다. 설정을 변경하는 방법은 여러 가지가 있지만, 가장 편한 방법은 scouter 클라이언트에서 변경하는 것이다. 해당 애플리케이션의 Configure 메뉴를 클릭하게 되면 아래와 같은 설정 정보 화면을 볼 수 있다. 여기서 원하는 내용을 설정한 후 오른쪽 상단에 있는 디스크 모양을 누르면 저장이 완료된다.
scouter의 XLog는 장애를 보다 빠르고 신속하게 진단할 수 있도록 필터링 기능을 제공한다.
왼쪽부터 각각의 아이콘에 대해서 알아보자
검색 : 특정 URL이나 화면을 찾기 위한 팝업 메뉴
SQL Filter : SQL 쿼리에서 수행된 시간만을 확인하기 위한 필터
API Filter : API 호출 시간만을 확인하기 위한 필터
Error Filter : Error가 발생한 것들을 확인하기 위한 필터
XLog도 다른 그래프들처럼 History 기능을 제공한다. 또는 Summary를 사용하여 다양한 통계 정보들을 확인할 수 있다. 조회한 데이터는 CSV 파일로 저장할 수 있다.