บันทึกสรุปภาพรวมสินทรัพย์
บันทึกสรุปภาพรวมสินทรัพย์ช่วยให้คุณวิเคราะห์การไหลของสินทรัพย์รวมที่ผู้ใช้เกมมี บริษัทพัฒนาเกมดำเนินการค้นหาเพื่อค้นหาจำนวนสินทรัพย์ และบันทึกนี้กำหนดผลลัพธ์ของการค้นหา ดังนั้นจำนวนบันทึกที่สร้างขึ้นจึงแตกต่างกันไปตามเกม
- ในกรณีของเกมที่ไม่ใช่ตัวละคร
- ตลาด * ระดับ * ระยะเวลาที่เลือกผู้ใช้ที่ใช้งาน (ตั้งแต่ฟิลด์) * จำนวน asset_id ที่ไม่ซ้ำกัน
- ในกรณีของเกมที่มีตัวละคร
- (ตลาด * ระดับ * ระยะเวลาที่เลือกผู้ใช้ที่ใช้งาน * จำนวน asset_id ที่ไม่ซ้ำกันตามตัวละคร * ประเภทตัวละคร) + (ตลาด * ระดับ * ระยะเวลาที่เลือกผู้ใช้ที่ใช้งาน * จำนวน asset_id ที่ไม่ซ้ำกันตามตัวละคร * หมายเลขบัญชี)
HIVE Analytics สามารถใช้เพื่อวิเคราะห์สถานะต่อไปนี้ผ่าน Asset Snapshot Summary Log.
- วิเคราะห์ว่าผู้ใช้เพียงแค่รวบรวมสินทรัพย์หรือบริโภคมัน
- วิเคราะห์การไหลจากจำนวนสินทรัพย์ตามระดับ
- วิเคราะห์การไหลจากจำนวนสินทรัพย์ตามผู้ใช้ที่ใช้งานในหนึ่ง, เจ็ด, และสามสิบวันนับจากเวลาที่สร้างล็อก
เช่น เกมปริศนาที่มีการกระทำครอบครัว
- ส่งตามลำดับโดย (สินทรัพย์ * ตั้งแต่)
- ผลลัพธ์คือ (ตลาด * ระดับ * สินทรัพย์ * ตั้งแต่) เนื่องจากการจัดกลุ่มตาม [ตลาด], [ระดับ]
- ส่งผลลัพธ์ของการสอบถามในรูปแบบบันทึกด้านล่าง:
SELECT
CONVERT(CHAR(10), getdate(),120),
'KAK',
'actionpuzzlefamily',
[market],
level,
1 AS asset_id,
SUM(cash) AS cash,
COUNT(*),
30
FROM #TEMP1
WHERE
[marketcheck] = 1 AND
lastlogin >= (GETDATE()-30)
GROUP BY [market],[level]
หมวดหมู่¶
เซิร์ฟเวอร์ทั่วไป | service_metrics-asset_snapshot_summary_log |
---|---|
เซิร์ฟเวอร์ทดสอบ | service_metrics_test-asset_snapshot_summary_log |
ส่งในรูปแบบ FTP¶
กฎการตั้งชื่อไฟล์ | asset_snapshot_summary_[date]_[server]_[ID เพื่อหลีกเลี่ยงการซ้ำซ้อน].json | เช่น, asset_snapshot_summary_20180705_111500_GLOBAL-4.json |
---|---|---|
ข้อกำหนดการบันทึก¶
Note
ฟิลด์ที่ใช้รูปแบบ snake_case เช่น server_id
จะถูกแปลงเป็น camel case เช่น serverId
เมื่อมันถูกเก็บในที่จัดเก็บสุดท้าย (BigQuery) และบันทึกที่ส่งในรูปแบบที่ไม่ได้ระบุ เช่น serverid
จะไม่ถูกบันทึกในคอลัมน์ของมัน
ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
---|---|---|---|
วันที่ | เวลาที่เก็บบันทึก รูปแบบ: yyyy-mm-dd hhss เช่น 2012-01-19 16:24:00 | string | Y |
เขตเวลา | UTC offset ของพารามิเตอร์เวลาในบันทึก * กำหนดค่าเขตเวลาเป็น ว่างหรือ GMT+09:00 เนื่องจากค่าของวันที่จะเป็น KST เสมอเมื่อส่งการกำหนดบันทึกเป็นประเภท scribe หรือ ftp เช่น "GMT+09:00" * ตั้งค่าของเขตเวลาอย่างยืดหยุ่นตามค่าของ dateTime เมื่อส่งการกำหนดบันทึกเป็นประเภท fluentd หรือ http เช่น "GMT+10:30" | string | Y |
ช่องทาง | ช่องทางการเข้าสู่ระบบ C2S: HIVE KAK: Kakao Talk LIN: LINE WEI: Weibo STE: Steam | string(3) | Y |
เกม | ใช้ชื่อแบรนด์ของเกม (เช่น derbydays) รายการที่สามของ app_id เช่น com.com2us.littlelegends.kakao.freefull.apple.global.ios.universal => littlelegends | string (50) | Y |
ตลาด | ข้อมูลตลาด "TS": SKT Tstore "OL": KT OllehMarket "OZ": LGU+ OzStore "AP": Apple Appstore "GO": Google Play "SA": Samsung Apps "LE": Com2us Lebi "MM": ChinaMobile MobileMarket "SN": Sina WeiboPoint "36": Qihu 360Point "MO": Momo MomoPoint "DN": DeNA MobagePoint "NA": NaverAppStore "AM": Amazon "ON": OneStore | string(2) | Y |
ระดับ | ระดับของผู้ใช้ในเกม (ระดับสูงสุดหากตัวละครมีหลายตัว) | int | Y |
ตั้งแต่ | ช่องว่างระหว่างการสร้างบันทึก (ฟิลด์วันที่) และการเข้าสู่ระบบครั้งล่าสุดเป็นเกณฑ์ในการดึงผู้ใช้ที่ใช้งาน 0: ผู้ใช้ทั้งหมด 1: ดึงผู้ใช้ที่เล่นเกมอย่างกระตือรือร้นหนึ่งวันก่อนการสร้างบันทึก 7: ดึงผู้ใช้ที่เล่นเกมอย่างกระตือรือร้นเจ็ดวันก่อนการสร้างบันทึก 30: ดึงผู้ใช้ที่เล่นเกมอย่างกระตือรือร้นสามสิบวันก่อนการสร้างบันทึก 11: ดึงผู้ใช้ที่ลงทะเบียนหนึ่งวันก่อนการสร้างบันทึก 17: ดึงผู้ใช้ที่ลงทะเบียนเจ็ดวันก่อนการสร้างบันทึก | int | Y |
asset_id | ตั้งค่านี้จาก 1 ถึง 100 สำหรับสินทรัพย์ที่สามารถแลกได้/คะแนนโซเชียลมีเดีย และจาก 101 ขึ้นไปสำหรับสินทรัพย์ที่ไม่สามารถแลกได้ เมื่อคุณกำหนดแล้ว อย่าเปลี่ยนแปลงมัน การทดสอบเป็นสิ่งจำเป็น (cf. หากสินทรัพย์ที่สามารถแลกได้คือสิ่งที่ผู้ใช้มักจะได้รับแทนที่จะซื้อในเกม ให้ตั้งค่าจาก 101 ขึ้นไป) ตั้งค่าประเภทสินทรัพย์ให้ตรงกับรูปแบบเดียวกับ cash_var_log/noncash_var_log | int | Y |
ชื่อสินทรัพย์ | ข้อมูลสั้นเกี่ยวกับ asset_id (เช่น bell, star, goldball, gold) | string(50) | Y |
จำนวน | จำนวนรวมของสินทรัพย์ที่เกี่ยวข้องกับ asset_id | bigint | Y |
นับ | จำนวนของสินทรัพย์ที่เกี่ยวข้องกับ asset_id | int | Y |
m_amount | จำนวนสูงสุดของสินทรัพย์เป้าหมาย | bigint | Y |
server_ip | IP ของเซิร์ฟเวอร์ที่เก็บบันทึก (เช่น IP ของเซิร์ฟเวอร์เกม) | string(32) | Y |
บริษัท | บริษัทเผยแพร่เกม เป้าหมายของบันทึก: เช่น "C2S": Com2uS, "GVI": Com2uS Holdings | string(3) | Y |
server_id | รหัสเซิร์ฟเวอร์ อ้างอิงจาก ตารางรหัสเซิร์ฟเวอร์ เพื่อป้อนรหัสเซิร์ฟเวอร์ (รหัส JSON Input) | string | Y |
character_type_id | ค่าของประเภทตัวละครที่ใช้ในเซิร์ฟเวอร์ ตั้งค่านี้เป็น 0 หากเกมไม่มีตัวละคร | int | Y |
character_level | ระดับตัวละครที่ใช้ในเซิร์ฟเวอร์ ตั้งระดับนี้เป็น 0 หากเกมไม่มีตัวละคร | int | Y |
guid | คีย์ที่ไม่ซ้ำกันที่สร้างขึ้นต่อบันทึก แนะนำให้ใช้รูปแบบสุ่มเช่น uuid | varchar(64) | N |
ตัวอย่างบันทึก¶
{
"date": "2017-09-05 17:23:01",
"game": "test",
"market": "GO",
"level": 34,
"since": 17,
"asset_id": 801,
"asset_name": "ub9c8uc77cub9acuc9c0",
"amount": 705,
"count": 2,
"m_amount": 405,
"server_ip": "10.0.0.1",
"server_id": "GLOBAL",
"timezone": "UTC+9",
"character_type_id": 0,
"character_level": 0,
"channel": "C2S",
"company": "GVI",
"guid": "ca4bd34c867f4617a819ae139d8d6670"
}