HarmonyOS 애플리케이션 데이터 수집
애플리케이션 데이터를 Guance로 수집한 후, Guance 콘솔을 통해 사용자 정의 시나리오 구성 및 이상 탐지 이벤트를 설정할 수 있습니다.
데이터 유형
Guance의 실제 사용자 모니터링(RUM)에는 여섯 가지 데이터 유형이 포함됩니다.
| 유형 |
설명 |
| session |
사용자 세션 정보 기록입니다. 현재 세션에서는 세션 차원을 기준으로 사용자 페이지, 리소스, 작업, 오류, 장시간 작업 관련 액세스 데이터가 기록됩니다. |
| view |
사용자가 모바일 애플리케이션의 페이지에 액세스할 때마다 조회 기록이 생성됩니다. 사용자가 동일한 페이지에 머무는 동안 리소스, 장시간 작업, 오류 및 작업 기록은 view_id 속성을 통해 관련 RUM 뷰에 연결됩니다. |
| resource |
사용자가 페이지에 액세스할 때 로드되는 리소스 정보 기록입니다. |
| error |
모바일 애플리케이션에서 발생하는 예외 또는 크래시입니다. |
| long_task |
애플리케이션에서 지정된 지속 시간 임계값을 초과하여 메인 스레드를 차단하는 모든 작업에 대해 장시간 작업 이벤트가 생성됩니다. |
| action |
모바일 애플리케이션에서의 사용자 활동(앱 시작, 클릭, 스와이프, 뒤로 가기 등)을 기록합니다. 각 작업에는 고유한 action_id가 첨부됩니다. |
전역 속성
사용자 액세스 모니터링의 시나리오 구성 및 이벤트 알림은 아래의 전역 속성을 통해 조회할 수 있습니다.
SDK 속성
| 필드 |
유형 |
설명 |
sdk_name |
string |
수집기 이름, 고정 이름: df_harmonyos_rum_sdk |
sdk_version |
string |
수집기 버전 정보 |
sdk_pkg_info |
string |
SDK 패키지 정보(JSON 형식) |
애플리케이션 속성
| 필드 |
유형 |
설명 |
app_id |
string |
필수, 사용자 액세스 애플리케이션 고유 ID 식별자로, Guance 콘솔에서 모니터를 생성할 때 자동으로 생성됩니다. |
env |
string |
필수, 환경 필드입니다. 속성값: prod/gray/pre/common/local. 각 값의 의미는 다음과 같습니다. prod: 프로덕션 환경 gray: 카나리아 환경 pre: 사전 릴리스 환경 common: 일상 환경 local: 로컬 환경 |
version |
string |
필수, 버전 번호입니다. |
service |
string |
선택 사항, 소속 업무 또는 서비스의 이름입니다. 고정 이름: df_rum_harmonyos |
application_uuid |
string |
애플리케이션 고유 식별자로, 동일한 빌드의 애플리케이션은 UUID가 동일합니다. |
사용자 및 세션 속성
| 필드 |
유형 |
설명 |
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 |
os |
string |
운영 체제 정보, 고정값: HarmonyOS |
os_version |
string |
운영 체제 버전 |
os_version_major |
string |
운영 체제 주 버전 |
screen_size |
string |
화면 해상도 |
arch |
string |
시스템 아키텍처(예: aarch64) |
지리 및 네트워크 속성
| 필드 |
유형 |
설명 |
network_type |
string |
네트워크 연결 유형입니다. 속성값 참조: wifi & 2g & 3g & 4g & 5g & unknown(알 수 없는 네트워크) & unreachable(네트워크 연결 불가) |
사용자 정의 속성
전역 속성 외에도 사용자 정의 속성(SDK는 사용자 정의 태그 데이터 지원)을 통해 시나리오를 구성하고 이벤트 알림을 설정할 수 있습니다. 사용자 정의 속성은 전역 속성이 아니며, 이를 통해 사용자가 애플리케이션에 액세스하는 전체 과정을 추적하고 영향을 받는 사용자 액세스 상황을 파악 및 발견하며 사용자 액세스 성능을 모니터링할 수 있습니다.
기타 데이터 유형 속성
Session
속성
| 필드 |
유형 |
설명 |
session_id |
string |
세션 ID |
session_type |
string |
세션 유형입니다. 참조값: user & test user: RUM 기능에서 생성된 데이터 test: 헤드리스 신서틱 테스트에서 생성된 데이터입니다. |
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 |
선택 사항, 페이지 메모리 사용량 최대값 |
battery_current_avg |
number |
선택 사항, 페이지 배터리 전류 평균값 |
battery_current_max |
number |
선택 사항, 페이지 배터리 전류 최대값 |
Resource
View 속성
| 필드 |
유형 |
설명 |
view_id |
string |
페이지 액세스 시 생성되는 고유 ID |
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_path_group |
string |
리소스 URL 경로 그룹 |
resource_type |
string |
리소스 유형 |
resource_method |
string |
리소스 요청 방식 |
resource_status |
string |
리소스 요청 반환 상태값 |
resource_status_group |
string |
리소스 요청 반환 상태 그룹값 |
resource_host_ip |
string |
리소스 URL 액세스 대상 IP |
trace_id |
string |
분산 추적 ID (분산 추적 활성화 시 선택 사항) |
span_id |
string |
분산 추적 Span ID (분산 추적 활성화 시 선택 사항) |
response_connection |
string |
응답 연결 유형 (선택 사항) |
response_content_type |
string |
응답 콘텐츠 유형 (선택 사항) |
response_content_encoding |
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) |
request_header |
string |
리소스 요청 헤더 |
response_header |
string |
리소스 응답 헤더 |
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 오류 유형: java_crash | native_crash | anr_error | anr_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 |
작업 관련 오류 횟수 |