사용자 액션 이름 규칙 설정
- 커밋: whatap-front
5a67210700d(브라우저 에이전트 설정에userActionNaming사용자 액션 이름 규칙 섹션 추가, 피처 플래그ui_show_rum_agent_setting_user_action_naming제거로 상시 노출, 작업자 노태경) - 상태: 개발자 컨펌 대기.
- 브라우저 에이전트 설정 메뉴 노출 조건 확인 전.
- 최종 머지 직전 본 박스와 이 안내는 제거되고 본문만 남습니다.
클릭 사용자 액션의 이름은 기본적으로 사용자가 누른 요소의 글자입니다. 같은 글자의 버튼이 여러 화면에 있거나 아이콘 버튼처럼 글자가 없으면 통계에서 어떤 액션인지 구분하기 어렵습니다. 사용자 액션 이름 규칙을 설정하면 클릭 액션의 이름을 수집 시점에 규칙대로 바꿀 수 있습니다. 예를 들어 누른 요소의 글자와 액션이 호출한 API 경로를 조합해 이름을 만들 수 있습니다. 브라우저 프로젝트를 운영하는 관리자와 프런트엔드 개발자를 위한 문서입니다.
바뀐 이름은 사용자 액션 통계와 사용자 액션 트레이스 목록의 액션 이름 컬럼에 표시하며, 성능 이벤트 로그(#PerformanceEvent)에도 같은 이름으로 저장합니다. 이름이 바뀐 액션은 트레이스 개요의 이름 옆 아이콘에서 원래 이름을 확인할 수 있습니다.
적용 범위
- 클릭 사용자 액션에만 적용합니다. 라우터 변경 액션의 이름은 바꾸지 않습니다.
- 저장한 뒤 수집하는 액션부터 적용합니다. 이미 수집한 액션의 이름은 바뀌지 않습니다.
- 맞는 규칙이 없으면 원래 이름을 유지합니다.
- 바뀐 이름은 200자까지 저장하고, 넘는 부분은 자릅니다.
메뉴 위치
관리 > 브라우저 에이전트 설정 메뉴에서 사용자 액션 이름 규칙 섹션을 확인하세요.
브라우저 에이전트 설정 메뉴가 모든 프로젝트에 표시되는지, 설치형에서 별도 설정이 필요한지는 (개발팀 컨펌 필요) 입니다.
규칙 설정하기
-
사용자 액션 이름 규칙 섹션의 토글을 켜세요.
-
필요하면 사용자 정의 플레이스홀더를 추가하세요. 자세한 내용은 사용자 정의 플레이스홀더 만들기를 참조하세요.
-
규칙 영역에서 규칙 추가 버튼을 클릭하고 추가된 행에 이름 형식(패턴)을 입력하세요. 패턴에는 중괄호로 감싼 플레이스홀더를 하나 이상 넣어야 합니다.
{elementIdentifier} · {xhrUrlPath} -
규칙이 여러 개이면 위로 옮기기, 아래로 옮기기 버튼으로 순서를 조정하세요.
-
저장 버튼을 클릭하세요.
규칙은 위에서부터 차례로 확인하며, 패턴에 쓴 플레이스홀더의 값이 모두 있는 첫 규칙 하나만 적용합니다. 예를 들어 {xhrUrlPath}를 쓴 규칙은 XHR이나 fetch 요청이 없는 클릭에는 맞지 않으므로, 다음 규칙으로 넘어갑니다.
기본 플레이스홀더
| Placeholder | Description |
|---|---|
{elementIdentifier} | 누른 요소의 글자(원래 액션 이름) |
{userInteraction} | 사용자 동작(click) |
{xhrUrl} | 액션의 첫 XHR 또는 fetch 요청 전체 URL(인코딩된 값 그대로) |
{xhrUrlPath} | 첫 요청 URL에서 쿼리를 뺀 경로(인코딩을 푼 글자) |
{xhrUrl}보다 {xhrUrlPath} 사용을 권장합니다. 전체 URL에는 캐시 방지 값 같은 쿼리가 붙어 요청마다 이름이 달라질 수 있습니다. {xhrUrl}을 쓴 규칙에는 화면에 주의 문구가 나타나지만 저장은 할 수 있습니다.
사용자 정의 플레이스홀더 만들기
사용자 정의 플레이스홀더는 액션의 첫 XHR 또는 fetch 요청 URL에서 정규식으로 값을 추출합니다. 사용자 정의 플레이스홀더 영역에서 추가 버튼을 클릭하고 각 행에 다음 값을 지정하세요.
| Item | Description |
|---|---|
| 이름 | 패턴에서 {이름} 형식으로 쓸 플레이스홀더 이름- 영문, 숫자, 밑줄( _)만 사용- 기본 플레이스홀더와 같은 이름, 중복 이름 사용 불가(대소문자 구분) |
| 입력 대상 | 정규식을 적용할 값 - XHR URL: 인코딩된 URL 그대로 - XHR URL 경로: 인코딩을 푼 경로 |
| 정규식 | 값을 추출할 정규식 - 캡처 그룹이 있으면 첫 번째 그룹 값, 없으면 일치한 전체 값 사용 - 512 바이트 이하 |
다음은 URL의 applicationID 쿼리 값을 추출해 이름에 넣는 예입니다.
| Item | Value |
|---|---|
| 이름 | extract_applicationID |
| 입력 대상 | XHR URL |
| 정규식 | [?&]applicationID=([^&#]+) |
| 규칙의 패턴 | 화면 {extract_applicationID} / {elementIdentifier} / {xhrUrlPath} |
입력 제한
| Item | Limit |
|---|---|
| 개수 | 사용자 정의 플레이스홀더 50개, 규칙 50개 이하 |
| 정규식 | UTF-8 기준 512바이트 이하 |
| 패턴 | UTF-8 기준 500바이트 이하, 플레이스홀더 1개 이상 |
| 이름 종류 | 프로젝트마다 1시간 동안 규칙으로 만드는 이름 종류 기본 1,000개 |
- 길이는 바이트로 셉니다. 한글은 글자당 3바이트입니다.
- 정규식은 RE2 문법을 따릅니다. 앞뒤 탐색(lookaround), 역참조(backreference),
\u이스케이프는 사용할 수 없습니다. 한글 범위는[가-힣]처럼 글자로 입력하세요. - 정규식과 경로 해석에는 첫 요청 URL의 앞 2KB만 사용합니다. 그 뒤에만 있는 값은 찾지 못합니다.
- 정규식이 너무 복잡하면 저장할 때 거절되고, 저장 실패 알림에 사유가 표시됩니다.
요청마다 달라지는 값(쿼리 문자열, 경로 속 ID 등)을 이름에 넣으면 액션 이름 종류가 계속 늘어납니다. 1시간 동안 만든 이름 종류가 상한에 도달하면, 그 시간이 끝날 때까지 처음 보는 이름은 규칙을 적용하지 않고 원래 이름을 사용합니다. 이미 만든 이름은 계속 만듭니다. {xhrUrlPath}는 페이지 그룹과 달리 경로 속 숫자나 ID를 정규화하지 않으므로, ID가 들어간 경로는 사용자 정의 플레이스홀더로 필요한 부분만 추출하세요.
이름 종류 상한(기본 1,000개, 기준 1시간)은 수집 서버 설정으로 바꿀 수 있습니다. 설치형에서 변경하는 방법은 (개발팀 컨펌 필요) 입니다.