Category
- Scribe type
Common Server purchase_log Test Server test_purchase_log - FTP type
Naming Rule purchase_[Date]_[Server]_[ID for avoiding duplication].json e.g., purchase_20180705_111500_GLOBAL-4.json - Fluentd Type (Based on Log definition)
Server (Balancing loads to two servers) analytics-hivelog-03.withhive.com
analytics-hivelog-04.withhive.comRule for naming tag ha2union.game.[short name of game].purchase_log e.g., ha2union.game.samplegame.purchase_log Value of category field [short name of game]_purchase_log e.g., {“category”:”samplegame_purchase_log”,”aaa”:1} Detailed transmission method - http type (Based on Log definition)
Server https://analytics-log.withhive.com Value of category field [short name of game]_purchase_log e.g., {“category”:”samplegame_purchase_log”,”aaa”:1} Detailed transmission method
Log Specification
Field Name | Description | Type | Required | IAP v2 Required |
channel | C2S: HIVE KAK: Kakao LIN: LINE WEI: Weibo |
string (3) | Y | N |
uid | HIVE uid sent from HIVE Client (extra_uid is in use) Without uid, input null |
bigint | Unnecessary if Extra_uid exists | N |
extra_uid | Unique identifier issued by external external channel (e.g. Kakao) where user accesses games from, not HIVE Without extra_uid, input null |
string (30) | Unnecessary if uid exists | N |
did | Device identifier used in HIVE | bigint | Y | N |
platform | Platform of the user device: “A”: Android “I”: iOS “B”: Bada “W”: Windows |
string (1) | Y | N |
os_version | Platform version of the user device e.g., “5.1.1” |
string (30) | Y | Not required, but recommended. |
market | Market information “TS”: SKT T store “OL”: KT Olleh Market “OZ”: LGU+ Oz Store “AP”: Apple App store “GO”: Google Play “SA”: Samsung Apps “LE”: Com2uS Lebi “MM”: ChinaMobile Mobile Market “SN”: Sina Weibo Point “36”: Qihu 360 Point “MO”: Momo Momo Point “DN”: DeNA Mobage Point “NA”: Naver App Store “AM”: Amazon “ON”: ONE store “FU”: Funtap “HU”: Huawei “OP”: OPPO “VI”: VIVO “XI”: Xiaomi “TC”: Tencent |
string (2) | Y | N |
game_index | Issued by Business Department Techpart App Index issued with AppID |
smallint | Y | N |
app_id | AppID which HIVE uses e.g., ‘com.com2us.derbyday.kakao.freefull.google. android.common’ |
string(200) | Y | Y |
version | The version of game which user currently uses e.g., “2.0.1” |
string(30) | Y | N |
nationality | Nationality code sent from the client. If this value is unable to send, just send client_ip (Search GeoIP on DW server and add it) Format: ISO 3166-1 alpha-2 e.g., “KR” Reference: [HIVE Identifier Policy](../../../develop/basics/identifier/) |
string(2) | Y | N |
client_ip | IP address of user device at the time of payment Format: [0–255]. [0–255]. [0–255]. [0–255] |
string(15) | Y | N |
transaction_id | Unique identifier of charge by game. It prevents duplication of purchase log when sending to HIVE server This field is to get rid of duplication when sent purchase logs in duplicated to the Hive server. GooglePlay: order_id (In test payment : if order_id returns null, use purchasetoken, and others use order_id) AppStore: transaction_id SamsungApps: payment_id Market without verification: Transaction identifier issued by game server If a game use IAP 2.0, enters {iap transaction id}. |
string(512) | Y | Y |
product_id | Product identifier e.g., com.com2us.tinyfarm.normal.freefull.apple. global.ios.universal.Large_Basket_of_Bells |
string(512) | Y | N |
product_name | Product name Kor/Eng/Num/Sign are available within 20 characters |
string(128) | Y | N |
product_price | Product price paid by user e.g., 10.99 |
float | Y | N |
currency | Currency of the price paid by user Format: ISO 4217 e.g., USD, KRW Payment via Lebi is displayed as “CNY” (20lebi=1CNY) |
string(3) | Y | N |
quantity | The number of products purchased by user | int | Y | N |
purchase_time | The time user pays for the purchase (on the basis of KST) Input without spaces Format: yyyy-mm-dd hh:mm:ss e.g., 2017-02-08 16:34:38 |
datetime | Y | Y |
timezone | UTC offset of time parameter in the log
|
string | Y | N |
path | gs: Abbreviation of game server (fixed) | string(2) | Y | N |
server_ip | IP address of game server which sends purchase log Format: [0–255]. [0–255]. [0–255]. [0–255] |
string(15) | Y | N |
giftee_uid | It displays whether the target of log is a gift or not; if a gift, the value means a unique identifier of the receiver (uid)
null: Not for a gift. Normal purchase for user itself |
bigint | Y | N |
device_name | Model name of user device e.g., iPhone, iPad, SM-G935, LGM-G600S |
string(32) | Y | N |
company | Game publishing company, the target of log: e.g., “C2S”: Com2uS, “GVI”: Com2uS Holdings |
string(3) | Y | N |
server_id | Server code Refer to Table of Server Code to input server code (JSON Enter Code) |
string | Y | Y |
server_uid | User identifier used in game server | bigint | Y | N |
level | The level of user in the game (The highest level if character is many) | int | Y | Y |
character_id | Character identifier used in server Set this identifier as 0 if the game has no character |
bigint | Y | N |
character_type_id | The value of character type used in server Set this value as 0 if the game has no character |
int | Y | N |
character_level | Character level used in server Set this level as 0 if the game has no character |
int | Y | N |
language | Language code of user Format: ISO 639 alpha-2 (small letter) e.g., “ko” |
string(7) | Y | N |
game_language | Language code of the game sent from the client. 2-small letters e.g., ko/zh-hans (simplified Chinese), zh-hant (traditional Chinese) Reference: HIVE Identifier Policy |
varchar | Y | N |
device_language | Language code of the device sent from the client e.g., ko/zh-hans (simplified Chinese), zh-hant (traditional Chinese) Reference: HIVE Identifier Policy |
varchar | Y | N |
vid | User identifier issued by Login Center If you don’s use Login Center, sending the key value is not required. |
bigint | Y | N |
mac_address | MAC address of user device Format: String type with 12 characters If not existed, empty the value e.g., 482C6A1E593D |
string(12) | Y | N |
item_send_ok | (Y/N) Is purchased item delivered to user? If the delivery state is unable to confirm, send the empty string “” | string(1) | Y | Y |
is_emulator | If connecting with Emulator for PC such as BlueStacks, return 1; unless, return 0 to the PC version, return 2 |
tinyint(1) | N | Not required, but recommended. |
guid | Unique key generated per log Random format such as uuid is recommended |
varchar(64) | N | N |
hiveiap_purchase_test | Test Payment Status | varchar(100) | N | N |
Log Sample
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
{ "channel": "C2S", "uid": 111111111, "did": 222222222, "mac_address": "000000000000", "platform": "A", "os_version": "6.0.1", "market": "GO", "game_index": "2414", "app_id": "com.com2us.misample", "version": "2.4.1", "level": 21, "nationality": "us", "language": "en", "ip": "112.114.245.232", "transaction_id": "GPA.3333-8449-4747-11111", "product_id": "com.com2us.misample.normal.freefull.google.global.android.common.cash01", "product_name": "\uc9c0", "product_price": "1.99", "quantity": 1, "currency": "USD", "purchase_time": "2018-05-01 11:22:33", "path": "gs", "server_ip": "114.114.245.239", "device_name": "samsung SM-G920P", "company": "C2S", "game_language": "en", "device_language": "ko", "server_id": "KR-2", "guid": "ca4bd34c867f4617a819ae139d8d6670" } |