트랜잭션
트랜잭션이란 사용자 브라우저의 요청을 처리하기 위한 서버 사이드의 Logical Unit of Work(LUW)를 말합니다. 개별 웹서비스(URL) 요청에 대한 처리 과정이 바로 트랜잭션입니다. 웹 애플리케이션에서 트랜잭션은 웹서비스(URL)에 대한 HTTP Request를 받아 Response를 반환하는 과정입니다.
애플리케이션의 성능은 이 트랜잭션들의 성능으로 요약할 수 있습니다. 트랜잭션 성능은 트랜잭션 시작에서부터 종료 시점, 응답시간 및 자원 사용량 혹은 트랜잭션 호출자 속성 등의 정보를 포함합니다.
기본적으로 트랜잭션 응답 분포와 트랜잭션 통계를 통해서 트랜잭션 성능을 분석할 수 있습니다.
에이전트에서 트랜잭션 성능을 추적해 설정할 수 있는 옵션을 다음과 같이 제공합니다.
트랜잭션 트레이싱
다음은 애플리케이션 내의 각 트랜잭션의 실행 경로를 상세하게 추적할 수 있는 에이전트 옵션입니다. 최소 응답 시간부터 트랜잭션의 실행 스텝 수까지 다양한 측면을 조정할 수 있습니다.
-
profile_basetime MiliSecond
기본값
500트레이스의 상세 정보를 수집할 최소 응답 시간을 설정합니다. 설정한 값 이하의 시간 내에 트랜잭션이 종료된 경우 트레이스 정보를 수집하지 않습니다. 단, 5분 단위로 최초 호출된 URL과 에러가 발생한 트랜잭션에 대한 트레이스 정보는 수집합니다.
노트profile_basetime옵션에 상관없이 에러를 수집하려면profile_concern_error_enabled옵션을true로 설정하세요. 기본값false로 설정하면 에러를 샘플링하게 됩니 다
-
profile_error_step_enabled Boolean
기본값
true프로파일에 에러 관련 정보를 표시하는 스텝을 추가할 수 있습니다.
-
trace_active_transaction_yellow_time MiliSecond
기본값
3000액티브 트랜잭션의 아크이퀄라이저에서 노란색으로 표현할 기준을 설정합니다.
-
trace_active_transaction_red_time MiliSecond
기본값
8000액티브 트랜잭션의 아크이퀄라이저에서 빨간색으로 표현할 기준을 설정합니다.
-
trace_service_port_enabled Boolean
기본값
false트랜잭션의 이름에 포트 번호를 추가합니다.
-
profile_zip_enabled Boolean
기본값
false프로파일 정보를 압축 전송합니다.
예외 처리
다음은 애플리케이션에서 발생하는 예외를 관리하고 모니터링하기 위한 옵션입니다. 특정 예외를 무시하거나 HTTP 상태 코드가 에러인 경우 에러로 처리할지 여부를 설정할 수 있습니다. 예외로 처리된 항목들은 히트맵 또는 트레이스 분석 창에서 정상 트랜잭션으로 표시됩니다.
-
httpc_status_ignore String
HTTP 상태 코드가 에러(
HTTPC_ERROR)인 경우 무시할 수 있습니다. 여러 값을 대상으로 할 경우 쉼표(,)를 구분자로 사용하세요.whatap.confhttpc_status_ignore=404,500팁HTTP 상태 에러 코드 무시 / 에러 통계 미포함
-
httpc_status_ignore_set String
whatap.error.HTTPC_ERROR를 무시합니다. 여러 값을 대상으로 할 경우 쉼표(,)를 구분자로 이용하세요.httpc_status_ignore_set=/a/b/c:400,/a/ab/c:404와 같이 설정하세요. 이때 url은 통계/에러 분석에서HTTPC_URL값을 입력합니다.whatap.confhttpc_status_ignore_set=/a/b/c:400,/a/ab/c:404팁HTTP 상태 에러 코드 무시 / 에러 통계 미포함
HTTP 트랜잭션 추적
다음은 HTTP 요청 및 응답에 관련된 다양한 정보를 추적하고 기록하는 에이전트 옵션입니다. 이를 통해 사용자는 애플리케이션의 HTTP 트랜잭션을 세밀하게 모니터링하고 분석할 수 있습니다. 트랜잭션 이름에 파라미터 값을 추가하거나 특정 URL이나 HTTP 메소드를 제외할 수 있습니다. 또한 HTTP 헤더 정보와 파라미터 정보를 포함하여 트랜잭션을 보다 상세하게 기록할 수 있습니다.
-
trace_normalize_enabled Boolean
기본값
true트랜잭션 URL을 파싱해 정규화하는 기능을 활성화합니다.
노트false로 값을 변경하면 패스 파라미터 파싱을 비활성화합니다. 이 경우 통계 데이터의 의미가 약화됨으로 디버그 용도로만 잠시 사용하는 것을 권장합니다. -
trace_auto_normalize_enabled Boolean
기본값
true트랜잭션 URL 정규화할 때 패턴 값을 어노테이션에서 추출해 자동으로 파싱하는 기능을 활 성화합니다.
-
trace_normalize_urls String
정규화할 트랜잭션 URL 패턴을 설정합니다. 호출 URL 패턴을 파싱해 패스 파라미터를 제거합니다.
노트예시,
/a/{v}/b라고 선언하면a/123/b→a/{v}/b로 치환합니다. 여러 개를 등록할 때는 쉼표(,)를 구분자로 사용하세요. 치환 패턴 정리 후 보완이 필요합니다. -
web_static_content_extensions String
기본값
js, htm, html, gif, png, jpg, css, swf, ico스태틱 콘텐츠임을 판단하는 확장자를 설정합니다. 이 옵션에 설정한 확장자를 가진 트랜잭션들은 트레이스 추적과 카운팅에서 제외합니다.
-
trace_transaction_name_header_key String
설정한 HTTP 헤더 키에서 추출한 값을 트랜잭션의 이름 마지막에 추가합니다.
-
profile_http_header_enabled Boolean
기본값
false트레이스 내역에 http 헤더 정보를 기록하려면
true로 설정하세요. -
profile_http_parameter_enabled Boolean
기본값
false트레이스 내역에 http 파라미터 정보를 기록하려면
true로 설정하세요. 파라미터는 별도 보안키를 입력해야 조회할 수 있습니다.노트-
Node.js 에이전트 0.4.95 버전 미만: 보안 키는 WAS 서버
${WHATAP_AGENT_HOME}/paramkey.txt 파일 내에 6자리로 작성합니다. paramkey.txt 파일이 존재하지 않는 경우 랜덤 값으로 자동 생성합니다. -
Node.js 에이전트 0.4.95 버전 이상: 보안 키는 WAS 서버
${WHATAP_AGENT_HOME}/security.conf 파일 내에paramkey키값을 확인하세요. security.conf 파일이 존재하지 않을 경우paramkey키값을 WHATAP으로 자동 생성합니다.
-
-
profile_http_header_url_prefix String
트레이스 내역에 http 헤더 정보를 기록할 대상 URL의 prefix를 정의할 때 사용합니다.
-
profile_http_parameter_url_prefix String
트레이스 내역에 http 파라미터 정보를 기록할 대상 URL의 prefix를 정의할 때 사용합니다.