세그먼트는 Hive SDK에서 수집한 정보로 사전에 정의한 속성 외에 자유롭게 속성 값을 정의하여 전송할 수 있고, 선택할 수 있습니다.
속성 전송하기
사용자 정의 속성값을 전송하기 위해 Hive SDK 클라이언트 로그 전송 방법을 사용합니다.
로그 전송을 위한 샘플 코드는 로그 정의 기능에서 클라이언트 소스 생성 기능을 통해 확인할 수 있습니다.
속성 전송 스펙
필드는 카멜케이스(예: dateTime) 형태로 구성되어 있으며, 대/소문자를 구분합니다. 그리고, 다음과 같은 경우에는 값이 저장되지 않습니다.
- 아래에 정의된 필드명이 아닌 경우(예: time)
- 필드명과 정확히 일치하지 않는 필드명일 경우(예: app_id)
- 각 필드에 정의된 타입이 아닌 경우(예: playerid에 “474392047”)
주의사항
- STRING: 1MB까지 문자열 데이터
- INTEGER: 부호가 있는 64비트(-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807) 데이터
- 각 필드의 타입에 맞지 않는 데이터가 전송되는 경우 해당 필드가 정상적으로 저장되지 않을 수 있기 때문에 반드시 타입에 맞는 값으로 전송해야 합니다.
필드명 | 타입 | 필수 여부 | 설명 |
playerId | INTEGER | Y | Hive 인증에서 유저를 식별하는 유니크 키
Hive SDK 클라이언트 로그 전송 기능을 사용하는 경우 자동으로 전송 |
uid | INTEGER | Hive 멤버십의 유저 키로 90000000000 이상의 uid는 게스트 유저 키를 의미
Hive SDK 클라이언트 로그 전송 기능을 사용하는 경우 자동으로 전송 |
|
appId | STRING | Y | 앱센터에서 발급받은 appId
Hive SDK 클라이언트 로그 전송 기능을 사용하는 경우 자동으로 전송 |
guid | STRING | Y | 속성 한 행의 고유 키 값
uuid와 같은 랜덤 문자열 형태를 권장 Hive SDK 클라이언트 로그 전송 기능을 사용하는 경우 자동으로 전송 |
dateTime | STRING | Y | “YYYY-MM-DD hh:mm:ss” 포맷의 속성 발생 시간
(예: “2022-11-15 10:20:10”) Hive SDK 클라이언트 로그 전송 기능을 사용하는 경우 자동으로 전송 |
timezone | STRING | Y | dateTime의 타임존
클라이언트 IP를 이용해 타임존 확인 방법을 통해 획득 가능 공백이거나 값이 없는 경우는 KST 기준으로 판단 (예: “GMT+09:00”) Hive SDK 클라이언트 로그 전송 기능을 사용하는 경우 자동으로 전송 |
category | STRING | Y | “pub_user_property_log”로 고정 |
propertyDataType | STRING | Y | 게임 내 유저가 갖는 속성 값의 데이터 유형으로 설정할 수 있는 값은 아래 4가지 중 택 1(예: “string”)
세그먼트 생성시 속성의 데이터 유형에 맞는 속성값 선택 기능을 제공하기 위해 사용 |
propertyName | STRING | Y | 게임 내 유저가 갖는 속성 값의 이름(예:”성공여부”)
속성 값이 영문인 경우는 대/소문자를 구분 안 함 속성 값이 공백 포함 28 Byte를 초과하는 경우 전송한 속성이 세그먼트 페이지에 표시될 때 줄바꿈이 발생할 수 있습니다. 세그먼트 생성시 속성을 선택할 때 사용 |
propertyValue | STRING | Y | 게임 내 유저가 갖는 속성 값(예: “실패”)
세그먼트 생성시 속성 이름에 해당되는 값을 선택할 때 사용 |
전송된 속성 확인하기
- 사용자 속성을 전송한 후에 로그 정의 기능에서 확인합니다.
- 사용자 속성 정의에서 요구하는 필드에 값이 모두 정상적으로 유입되었다면, 세그먼트 생성시 유저를 선택할 수 있습니다.