React Native 애플리케이션 데이터 수집
개요
React Native 데이터 수집은 Android 및 iOS 네이티브 프레임워크에 의존합니다. Android/iOS 데이터 수집과의 비교를 위해, 다음 취소선 항목은 구현되지 않은 부분입니다.
데이터 유형
Guance의 RUM에는 6가지 데이터 유형이 포함됩니다.
| 유형 |
설명 |
| session |
사용자 세션 정보 기록입니다. 현재 세션에서는 세션 차원의 사용자 페이지, 리소스, 작업, 오류, 장기 작업 관련 액세스 데이터가 기록됩니다. |
| view |
사용자가 모바일 애플리케이션의 페이지에 액세스할 때마다 조회 레코드가 생성됩니다. 사용자가 동일한 페이지에 머무르는 동안 리소스, 장기 작업, 오류 및 작업 레코드는 view_id 속성을 통해 관련 RUM 보기에 연결됩니다. |
| resource |
사용자가 페이지에 액세스할 때 로드된 리소스 정보 기록입니다. |
| error |
모바일 애플리케이션에서 발생한 예외 또는 크래시입니다. |
long_task |
애플리케이션에서 지정된 지속 시간 임계값을 초과하여 메인 스레드를 차단하는 모든 작업에 대해 장기 작업 이벤트가 생성됩니다. |
| action |
모바일 애플리케이션의 사용자 활동(애플리케이션 시작, 클릭, 스와이프, 뒤로 가기 등)을 기록합니다. 각 작업에는 고유한 action_id가 첨부됩니다. |
전역 속성
RUM의 시나리오 구성 및 이벤트 알림은 아래 전역 속성을 통해 조회할 수 있습니다.
SDK 속성
| 필드 |
유형 |
설명 |
sdk_name |
string |
수집기 이름, 고정 이름:
df_macos_rum_sdk
df_linux_rum_sdk
df_windows_rum_sdk
df_web_rum_sdk
df_miniapp_rum_sdk
df_ios_rum_sdk
df_android_rum_sdk |
sdk_version |
string |
수집기 버전 정보 |
애플리케이션 속성
| 필드 |
유형 |
설명 |
app_id |
string |
필수, RUM 애플리케이션 고유 ID 식별자로, Guance 콘솔에서 모니터링을 생성할 때 자동으로 생성됩니다. |
env |
string |
필수, 환경 필드. 속성값: prod/gray/pre/common/local. 여기서: prod: 프로덕션 환경 gray: 카나리아 환경 pre: 사전 프로덕션 환경 common: 일상 환경 local: 로컬 환경 |
version |
string |
필수, 버전 번호. |
service |
string |
선택 사항, 소속된 비즈니스 또는 서비스 이름. 고정 이름:
df_rum_ios
df_rum_android
df_rum_windows
df_rum_linux |
사용자 및 세션 속성
| 필드 |
유형 |
설명 |
userid |
string |
로그인하지 않은 사용자는 임의 uuid를 userid로 사용하고, 로그인한 사용자는 애플리케이션 백엔드에서 생성된 사용자 ID를 사용합니다. |
user_name |
string |
선택 사항, 사용자 이름. |
user_email |
string |
선택 사항, 사용자 이메일. |
session_id |
string |
세션 ID로, 15분 이상 조작이 없으면 새로운 session_id가 생성됩니다. |
session_type |
string |
세션 유형. 참조값: user 및 synthetics user: RUM 기능에서 생성된 데이터 synthetics: 헤드리스 신서틱 테스트에서 생성된 데이터 |
is_signin |
boolean |
등록된 사용자 여부, 속성값: T 및 F |
기기 및 해상도 속성
| 필드 |
유형 |
설명 |
device |
string |
모바일 기기 제조사 |
model |
string |
모바일 기기 모델 |
device_uuid |
string |
모바일 기기 고유 ID, Android: ANDROID_ID, iOS: UIDevice.identifierForVendor를 사용하여 생성 |
os |
string |
운영 체제 정보 |
os_version |
string |
운영 체제 버전 |
os_version_major |
string |
운영 체제 주요 버전 |
screen_size |
string |
화면 해상도 |
지리 및 네트워크 속성
| 필드 |
유형 |
설명 |
ip |
string |
사용자 액세스 IP 주소 |
isp |
string |
인터넷 서비스 제공업체 |
network_type |
string |
네트워크 연결 유형, 속성값 참조: wifi | 2g | 3g | 4g | 5g | unknown(알 수 없는 네트워크) | unreachable(네트워크에 연결할 수 없음) |
country |
string |
국가 |
country_iso_code |
string |
국가 ISO 코드 |
province |
string |
주/도 |
city |
string |
도시 |
사용자 정의 속성
전역 속성 외에도 사용자 정의 속성(SDK는 사용자 정의 태그 데이터 추가를 지원)을 통해 시나리오를 구성하고 이벤트 알림을 설정할 수 있습니다. 사용자 정의 속성은 전역 속성이 아니며, 사용자 정의 속성을 통해 사용자가 애플리케이션에 액세스하는 전체 과정을 추적하고 영향을 받는 액세스 상황을 파악 및 발견하며 사용자 액세스 성능을 모니터링할 수 있습니다.
기타 데이터 유형 속성
Session
속성
| 필드 |
유형 |
설명 |
session_id |
string |
세션 ID |
session_type |
string |
세션 유형. 참조값: user 및 test user: RUM 기능에서 생성된 데이터 test: 헤드리스 신서틱 테스트에서 생성된 데이터 |
session_referrer |
string |
세션 출처. 일반적으로 출처 페이지 주소를 기록합니다. |
session_first_view_id |
string |
현재 세션의 첫 번째 페이지의 view_id |
session_first_view_name |
string |
현재 세션의 첫 번째 페이지의 URL |
session_last_view_id |
string |
현재 세션의 마지막으로 액세스한 페이지의 view_id |
session_last_view_name |
string |
현재 세션의 마지막 페이지의 URL |
통계 지표
| 필드 |
유형 |
설명 |
time_spent |
number(ns) |
현재 세션 지속 시간 |
session_view_count |
number |
현재 세션과 연결된 view_id 개수 |
session_error_count |
number |
현재 세션에서 발생한 오류 개수 |
session_resource_count |
number |
현재 세션에서 로드한 리소스 개수 |
session_action_count |
number |
현재 세션에서 사용자 작업 횟수 |
session_long_task_count |
number |
현재 세션에서 발생한 장기 작업 횟수 |
View
속성
| 필드 |
유형 |
설명 |
view_id |
string |
페이지에 액세스할 때마다 생성되는 고유 ID |
view_referrer |
string |
페이지 출처, 페이지의 상위 페이지 |
view_name |
string |
페이지 이름 |
지표
| 필드 |
유형 |
설명 |
loading_time |
number(ns) |
페이지 로드 시간 |
time_spent |
number(ns) |
페이지 체류 시간 |
is_active |
boolean |
사용자가 여전히 활성 상태인지 여부를 판단합니다. 참조값: true 및 false |
통계 지표
| 필드 |
유형 |
설명 |
view_error_count |
number |
페이지 로드 시마다 발생한 오류 횟수 |
view_resource_count |
number |
페이지 로드 시마다 요청된 리소스 개수 |
view_long_task_count |
number |
페이지 로드 시마다 발생한 장기 작업 개수 |
view_action_count |
number |
페이지 조회 중 작업 횟수 |
모니터링 지표
| 필드 |
유형 |
설명 |
cpu_tick_count |
number |
선택 사항, 해당 페이지의 CPU 틱 횟수 |
cpu_tick_count_per_second |
number |
선택 사항, 초당 평균 CPU 틱 횟수 |
fps_avg |
number |
선택 사항, 페이지 평균 초당 프레임 수 |
fps_mini |
number |
선택 사항, 페이지 최소 초당 프레임 수 |
memory_avg |
number |
선택 사항, 페이지 메모리 사용량 평균값 |
memory_max |
number |
선택 사항, 페이지 메모리 피크 값 |
Resource
View 속성
| 필드 |
유형 |
설명 |
view_id |
string |
페이지에 액세스할 때마다 생성되는 고유 ID |
is_active |
boolean |
사용자가 여전히 활성 상태인지 여부를 판단합니다. 참조값: true 및 false |
view_referrer |
string |
페이지 출처, 페이지의 상위 페이지 |
view_name |
string |
페이지 이름 |
Action 속성
| 필드 |
유형 |
설명 |
action_id |
string |
사용자 페이지 작업 시 생성되는 고유 ID |
action_name |
string |
작업 이름 |
action_type |
string |
작업 유형(콜드/핫 스타트, 클릭 등) |
Resource 속성
| 필드 |
유형 |
설명 |
resource_url |
string |
리소스 URL |
resource_url_host |
string |
리소스 URL 도메인 부분 |
resource_url_path |
string |
리소스 URL 경로 부분 |
resource_url_query |
string |
리소스 URL 쿼리 부분 |
resource_url_path_group |
string |
리소스 URL 경로 그룹 |
resource_type |
string |
리소스 유형 |
resource_method |
string |
리소스 요청 방식 |
resource_status |
string |
리소스 요청 반환 상태 값 |
resource_status_group |
string |
리소스 요청 반환 상태 그룹 값 |
지표
| 필드 |
유형 |
설명 |
resource_size |
number |
리소스 크기, 기본 단위: byte |
resource_dns |
number(ns) |
리소스 로드 DNS 확인 시간 계산 방식: domainLookupEnd - domainLookupStart |
resource_tcp |
number(ns) |
리소스 로드 TCP 연결 시간 계산 방식: connectEnd - connectStart |
resource_ssl |
number(ns) |
리소스 로드 SSL 연결 시간 계산 방식: connectEnd - secureConnectStart |
resource_ttfb |
number(ns) |
리소스 로드 요청 응답 시간 계산 방식: responseStart - requestStart |
resource_trans |
number(ns) |
리소스 로드 콘텐츠 전송 시간 계산 방식: responseEnd - responseStart |
resource_first_byte |
number(ns) |
리소스 로드 첫 바이트 시간 계산 방식: responseStart - domainLookupStart |
duration |
number(ns) |
리소스 로드 시간 계산 방식: duration(responseEnd-startTime) |
Error
View 속성
| 필드 |
유형 |
설명 |
view_id |
string |
페이지에 액세스할 때마다 생성되는 고유 ID |
view_referrer |
string |
페이지 출처, 페이지의 상위 페이지 |
view_name |
string |
페이지 이름 |
Action 속성
| 필드 |
유형 |
설명 |
action_id |
string |
사용자 페이지 작업 시 생성되는 고유 ID |
action_name |
string |
작업 이름 |
action_type |
string |
작업 유형(콜드/핫 스타트, 클릭 등) |
Error 속성
| 필드 |
유형 |
설명 |
error_source |
string |
오류 소스, 참조값: logger | network |
error_type |
string |
오류 유형 logger 오류 유형: reactnative_crash | java_crash | native_crash | anr_error | anr_crash | ios_crash network 오류 유형: network_error |
error_situation |
string |
오류 발생 시점, 참조값: startup (시작 시) 및 run (런타임 시) |
type=network인 경우, 다음 Network Error 속성이 추가됩니다.
| 필드 |
유형 |
설명 |
resource_status |
string |
리소스 요청 반환 상태 값 |
resource_url |
string |
리소스 URL |
resource_url_host |
string |
리소스 URL 도메인 부분 |
resource_url_path |
string |
리소스 URL 경로 부분 |
resource_url_path_group |
string |
리소스 URL 경로 그룹 |
resource_method |
string |
리소스 요청 방식 |
Error 모니터링 속성
| 필드 |
유형 |
설명 |
memory_total |
string |
선택 사항, 메모리 총량 |
memory_use |
number |
선택 사항, 메모리 사용률 |
cpu_use |
number |
선택 사항, CPU 사용률 |
battery_use |
number |
선택 사항, 현재 배터리 잔량 |
locale |
string |
현재 시스템 언어 |
지표
| 필드 |
유형 |
설명 |
error_message |
string |
오류 메시지 |
error_stack |
string |
오류 스택 |
Long Task
View 속성
| 필드 |
유형 |
설명 |
view_id |
string |
페이지에 액세스할 때마다 생성되는 고유 ID |
view_referrer |
string |
페이지 출처, 페이지의 상위 페이지 |
view_name |
string |
페이지 이름 |
Action 속성
| 필드 |
유형 |
설명 |
action_id |
string |
사용자 페이지 작업 시 생성되는 고유 ID |
action_name |
string |
작업 이름 |
action_type |
string |
작업 유형(콜드/핫 스타트, 클릭 등) |
지표
| 필드 |
유형 |
설명 |
duration |
number(ns) |
멈춤 시간 |
long_task_message |
string |
멈춤 정보 |
long_task_stack |
string |
멈춤 스택 |
Action
View 속성
| 필드 |
유형 |
설명 |
view_id |
string |
페이지에 액세스할 때마다 생성되는 고유 ID |
view_referrer |
string |
페이지 출처, 페이지의 상위 페이지 |
view_name |
string |
페이지 이름 |
Action 속성
| 필드 |
유형 |
설명 |
action_id |
string |
사용자 페이지 작업 시 생성되는 고유 ID |
action_name |
string |
작업 이름 |
action_type |
string |
작업 유형(콜드/핫 스타트, 클릭 등) |
지표
| 필드 |
유형 |
설명 |
duration |
number(ns) |
페이지 작업 소요 시간 |
통계 지표
| 필드 |
유형 |
설명 |
action_long_task_count |
number |
작업과 연결된 장기 작업 횟수 |
action_resource_count |
number |
작업과 연결된 리소스 요청 횟수 |
action_error_count |
number |
작업과 연결된 오류 횟수 |