ตรวจสอบโครงสร้างการเก็บข้อมูลและตัวชี้วัดด้วยล็อกทดสอบ: การส่งล็อกอีเวนต์ ตอนที่ 2
การส่งล็อกทดสอบก่อนพัฒนาฟังก์ชันส่งอีเวนต์ช่วยให้ตรวจสอบล่วงหน้าได้ว่าอีเวนต์และพร็อพเพอร์ตี้ถูกเก็บตามโครงสร้างและชนิดข้อมูลที่ตั้งใจไว้หรือไม่ และข้อมูลที่เก็บได้สร้างตัวชี้วัดที่ต้องการได้หรือไม่ ใน Hive Analytics ให้ส่งล็อกทดสอบด้วย ETL Simulation ใน Data > Event ตรวจสอบผลการเก็บข้อมูลใน Data Preview และ BigQuery และตรวจสอบการสร้างตัวชี้วัดใน Create หากทดสอบในสภาพแวดล้อมจริง ให้ใช้ App ID ทดสอบแยกต่างหาก และกำหนดวิธียกเว้นข้อมูลทดสอบออกจากการรวมตัวชี้วัดไว้ด้วย
ทำไมต้องตรวจสอบข้อมูลก่อนพัฒนาฟังก์ชันส่งอีเวนต์
"กำหนดโครงสร้างการเก็บล็อกด้วยเทมเพลตอีเวนต์: การส่งล็อกอีเวนต์ ตอนที่ 1" ได้อธิบายการกำหนดอีเวนต์และพร็อพเพอร์ตี้ที่จะวิเคราะห์ และการเตรียมซอร์สโค้ดสำหรับส่งล็อกไปแล้ว ตอนนี้จะส่งล็อกทดสอบก่อนขอให้พัฒนาจริง เพื่อตรวจสอบโครงสร้างการเก็บข้อมูลของอีเวนต์และความเป็นไปได้ในการนำไปใช้กับตัวชี้วัด
ก่อนพัฒนาฟังก์ชันส่งอีเวนต์ ต้องยืนยันว่าข้อมูลถูกเก็บอย่างถูกต้อง และโครงสร้างนั้นสร้างตัวชี้วัดที่ต้องการได้ แม้จะกำหนดชื่ออีเวนต์และพร็อพเพอร์ตี้ไว้แล้ว หากรูปแบบค่าหรือชนิดข้อมูลจริงไม่ตรงกับเกณฑ์การวิเคราะห์ ก็จะพบปัญหาพร็อพเพอร์ตี้ขาดหายหรือการคำนวณตัวชี้วัดผิดพลาดหลังพัฒนาเสร็จไปแล้ว
หลังส่งล็อกทดสอบ ผู้รับผิดชอบงานวิเคราะห์ข้อมูลจะตรวจสอบว่าอีเวนต์และพร็อพเพอร์ตี้ถูกเก็บตามโครงสร้างที่ตั้งใจไว้หรือไม่ และมีพร็อพเพอร์ตี้ที่ตัวชี้วัดต้องใช้ครบหรือไม่ รวมถึงตรวจชนิดข้อมูลและรูปแบบค่าของแต่ละพร็อพเพอร์ตี้ และดูว่าเมื่อนำการคำนวณและมิติมาใช้กับข้อมูลที่เก็บได้แล้ว จะสร้างตัวชี้วัดที่ต้องการได้หรือไม่
ตัวอย่างเช่น หากอีเวนต์การเล่นคอนเทนต์สำเร็จไม่มีตัวระบุผู้ใช้ ก็จะคำนวณจำนวนผู้ใช้ที่เล่นสำเร็จไม่ได้ หากตั้งเวลาเล่นเป็นชนิดข้อความหรือไม่ได้กำหนดหน่วยของค่า ก็จะตรวจสอบเวลาเล่นเฉลี่ยตามเกณฑ์ที่ตั้งใจไว้ได้ยาก การส่งข้อมูลตัวอย่างก่อนพัฒนาและตรวจสอบรูปแบบการเก็บจริงกับผลของตัวชี้วัด จะช่วยกำหนดโครงสร้างอีเวนต์และเกณฑ์การส่งให้ชัดเจนขึ้น
วิธีตรวจสอบล็อกทดสอบใน Hive Analytics
ใน Data > Event ของ Hive Analytics สามารถตรวจสอบอีเวนต์และพร็อพเพอร์ตี้ที่ลงทะเบียนไว้ และส่งล็อกทดสอบผ่าน ETL Simulation หรือการพัฒนาโค้ดได้ เมื่อใส่ค่าตัวอย่างที่เหมาะกับสถานการณ์การวิเคราะห์ในแต่ละพร็อพเพอร์ตี้ ก็จะตรวจสอบผลการเก็บข้อมูลและความเป็นไปได้ในการนำไปใช้เป็นตัวชี้วัดได้ก่อนพัฒนาฟังก์ชันส่งล็อกจริง
การตรวจสอบล็อกทดสอบดำเนินตามลำดับนี้ เตรียมสภาพแวดล้อมการส่งและ App ID ส่งล็อก แล้วตรวจสอบผลการเก็บข้อมูลและการสร้างตัวชี้วัด
- เลือกสภาพแวดล้อม
เลือกสภาพแวดล้อมแซนด์บ็อกซ์หรือสภาพแวดล้อมจริงที่จะส่งล็อกทดสอบตามวัตถุประสงค์ของการตรวจสอบ เมื่อตรวจสอบผลใน Data Preview และ BigQuery ก็ต้องค้นหาข้อมูลของสภาพแวดล้อมที่ส่งล็อกไปด้วย - เตรียม App ID
เตรียม App ID ที่ลงทะเบียนไว้ใน App Center หรือการตั้งค่าโปรเจกต์ของ Hive Consoleการแยกข้อมูลทดสอบในสภาพแวดล้อมจริง
เพื่อแยกข้อมูลทดสอบออกจากข้อมูลการให้บริการจริงอย่างชัดเจนในสภาพแวดล้อมจริง แนะนำให้ลงทะเบียนและใช้ App ID ทดสอบแยกต่างหาก หากทดสอบก่อนเปิดตัวเกม ให้ตั้งวันเปิดตัวอย่างเป็นทางการเป็นวันเริ่มต้นตัวชี้วัดในTime Settingsเพื่อยกเว้นข้อมูลที่เก็บก่อนเปิดตัวออกจากการรวมตัวชี้วัด หากเกมให้บริการอยู่แล้ว ให้ลงทะเบียน App ID ทดสอบในMetric FiltersหรือลงทะเบียนบัญชีทดสอบในExcluded User Managementเพื่อยกเว้นข้อมูลนั้นออกจากการรวมตัวชี้วัด เลือกวิธีที่เหมาะกับเกณฑ์การแยกข้อมูลทดสอบและสถานะการให้บริการ - ส่งล็อกทดสอบ
ผู้รับผิดชอบงานวิเคราะห์ส่งจาก ETL Simulation ได้โดยตรง หรือนักพัฒนานำโค้ดที่ตรวจสอบใน Source Generation ไปพัฒนาแล้วส่งก็ได้ ใส่ค่าตัวอย่างที่สมมติสถานการณ์การวิเคราะห์ในพร็อพเพอร์ตี้ของอีเวนต์ และก่อนส่งให้ตรวจสอบว่าตัวระบุผู้ใช้ ข้อมูลคอนเทนต์ และพร็อพเพอร์ตี้ตัวเลข ฯลฯ ตรงกับชนิดข้อมูลและรูปแบบค่าที่กำหนดไว้ - ตรวจสอบผลการเก็บข้อมูล
ตรวจสอบใน Data Preview ว่าได้รับอีเวนต์หรือไม่ และค่าพร็อพเพอร์ตี้ที่ส่งมาเป็นอย่างไร หากต้องการดูข้อมูลดิบอย่างละเอียด ให้ค้นหาข้อมูลอีเวนต์ใน BigQuery โดยตรงเพื่อตรวจว่าค่าที่ใส่ถูกบันทึกด้วยชื่อพร็อพเพอร์ตี้และชนิดข้อมูลที่ถูกต้องการขอสิทธิ์ค้นหาข้อมูลใน BigQuery
ข้อมูลดิบของอีเวนต์และพร็อพเพอร์ตี้ที่เก็บได้สามารถค้นหาได้โดยตรงใน BigQuery การใช้ BigQuery ต้องได้รับสิทธิ์ผู้ดูแลระบบ Hive Analytics ก่อน แล้วจึงขอสิทธิ์ค้นหาข้อมูลใน BigQuery จากเมนูบัญชีของ Hive Analytics - ตรวจสอบการสร้างตัวชี้วัด
ในCreateให้เลือกอีเวนต์ที่เก็บได้เป็นค่าที่วัด แล้วใช้การคำนวณและมิติที่จำเป็น ตรวจสอบว่าตัวเลขที่คำนวณได้ตรงกับที่คาดไว้หรือไม่ และผลถูกแบ่งตามค่าพร็อพเพอร์ตี้ตามเกณฑ์ที่ต้องการหรือไม่ เพื่อยืนยันว่าข้อมูลนั้นสร้างตัวชี้วัดที่ตรงกับวัตถุประสงค์การวิเคราะห์ได้
ตรวจสอบอีเวนต์ด้วยล็อกทดสอบ contents_success
หากต้องการวิเคราะห์จำนวนผู้ใช้ที่เล่นคอนเทนต์สำเร็จ เวลาเล่นเฉลี่ย และคะแนนสูงสุด ต้องตรวจสอบว่าอีเวนต์ contents_success ถูกเก็บตามโครงสร้างที่ตั้งใจไว้ ขั้นตอนตั้งแต่เลือกสภาพแวดล้อมจนถึงตรวจสอบการสร้างตัวชี้วัดมีดังนี้
1. เลือกสภาพแวดล้อม
เพื่อตรวจสอบโครงสร้างข้อมูลที่จะใช้ในการให้บริการจริง ให้ดำเนินการตรวจสอบในสภาพแวดล้อมจริง เข้าสู่คอนโซล Hive Analytics ของสภาพแวดล้อมจริง เลือกอีเวนต์ contents_success ใน Data > Event แล้วไปที่แท็บ ETL Simulation
2. เตรียม App ID
ตรวจสอบว่า App ID ทดสอบที่จะใช้ในสภาพแวดล้อมจริงลงทะเบียนไว้ใน App Center หรือการตั้งค่าโปรเจกต์ของ Hive Console แล้ว
3. ส่งล็อกทดสอบ
ล็อกทดสอบส่งได้ทั้งโดยผู้รับผิดชอบงานวิเคราะห์จาก ETL Simulation โดยตรง หรือโดยนักพัฒนาที่นำโค้ดจาก Source Generation ไปใช้กับเกม ไม่ว่าวิธีใดต้องใส่พร็อพเพอร์ตี้บังคับสำหรับการส่งล็อก ได้แก่ userId, deviceId, identifierProvider, appId, eventTime และ eventName ใส่ hive ใน identifierProvider และใส่ App ID ทดสอบที่เตรียมไว้ใน appId ส่วน appIdGroup จะถูกสร้างอัตโนมัติเมื่อใส่ appId จึงไม่ต้องใส่แยก
3.1 ส่งจาก ETL Simulation
ตรวจสอบพร็อพเพอร์ตี้และชนิดข้อมูลที่กำหนดไว้สำหรับอีเวนต์ แล้วเปลี่ยนค่าของพร็อพเพอร์ตี้บังคับทั้ง 6 รายการ จากนั้นเปลี่ยน characterLv, modeTypeId, modeTypeName, score และ playTimeSec เป็นค่าตัวอย่างที่เหมาะกับสถานการณ์การวิเคราะห์ แล้วส่งล็อกทดสอบ
contents_success3.2 ส่งด้วยซอร์สโค้ดที่สร้างขึ้น
นักพัฒนาตรวจสอบโค้ดที่เหมาะกับสภาพแวดล้อมการพัฒนาใน Source Generation แล้วเชื่อมพร็อพเพอร์ตี้บังคับทั้ง 6 รายการและค่าพร็อพเพอร์ตี้รายละเอียดของอีเวนต์เข้ากับข้อมูลเกมจริง หลังจากใช้โค้ดให้อีเวนต์ contents_success เกิดขึ้นเมื่อการเล่นคอนเทนต์สำเร็จได้รับการยืนยัน ให้รันฟังก์ชันที่พัฒนาเพื่อส่งล็อกทดสอบ ดูวิธีพัฒนาโดยละเอียดได้ในคู่มือการส่งอีเวนต์บนเว็บไซต์ Hive Developers
ข้อควรระวังในการส่งล็อก
หากไม่ปฏิบัติตามกฎต่อไปนี้ ล็อกจะไม่ถูกเก็บตามปกติ และจะถูกบันทึกไว้ในตารางกักแยกt_raw_event_log_rescue
- ใส่
eventTimeในรูปแบบ RFC 3339 ที่มีเขตเวลา และอยู่ในช่วงตั้งแต่ 10 ปีก่อนถึง 5 ปีหลังจากเวลาปัจจุบัน หากรูปแบบไม่ถูกต้องหรืออยู่นอกช่วงที่อนุญาต ล็อกจะถูกกักแยก- ใส่ App ID ที่ลงทะเบียนไว้ใน App Center หรือการตั้งค่าโปรเจกต์ของ Hive Console ใน
appIdหากใส่ค่าที่ไม่ได้ลงทะเบียนหรือไม่ถูกต้อง ล็อกจะถูกกักแยก
4. ตรวจสอบผลการเก็บข้อมูล
4.1 ตรวจสอบใน Data Preview
หลังส่งแล้ว ให้ตรวจสอบใน Data Preview ว่าได้รับ contents_success หรือไม่ และดูตัวระบุผู้ใช้และอุปกรณ์ App ID ชื่ออีเวนต์ รวมถึงค่าพร็อพเพอร์ตี้ใน attributes ไปพร้อมกัน
contents_success หรือไม่ และค่าพร็อพเพอร์ตี้ที่ส่งมาเป็นอย่างไร4.2 ตรวจสอบใน BigQuery
หากต้องการดูข้อมูลดิบอย่างละเอียดขึ้น ให้ค้นหาข้อมูลใน BigQuery โดยใช้ App ID ทดสอบและชื่ออีเวนต์เป็นเงื่อนไข แล้วตรวจสอบว่า characterLv, modeTypeId, modeTypeName, score และ playTimeSec ที่ส่งไปถูกบันทึกด้วยค่าและชนิดข้อมูลที่ตั้งใจไว้
5. ตรวจสอบการสร้างตัวชี้วัด
หากผลการเก็บข้อมูลไม่มีปัญหา ให้เลือกอีเวนต์ contents_success ใน Create แล้วสร้างตัวชี้วัดดังนี้
- ใช้การคำนวณ
COUNT DISTINCTกับuserIdเพื่อดูจำนวนผู้ใช้ที่เล่นคอนเทนต์สำเร็จ - ใช้การคำนวณ
AVGกับplayTimeSecเพื่อดูเวลาเล่นเฉลี่ย - ใช้การคำนวณ
MAXกับscoreเพื่อดูคะแนนสูงสุด - เลือก
characterLvและmodeTypeNameเป็นมิติ เพื่อเปรียบเทียบผลตามเลเวลตัวละครและตามคอนเทนต์
หากสร้างจำนวนผู้ใช้ที่เล่นสำเร็จ เวลาเล่นเฉลี่ย และคะแนนสูงสุดได้ และผลถูกแบ่งตามเลเวลตัวละครและคอนเทนต์ แสดงว่าอีเวนต์พร้อมสำหรับวัตถุประสงค์การวิเคราะห์แล้ว หากค่าขาดหายหรือผลไม่ตรงกับที่คาดไว้ ให้ตรวจสอบชื่อพร็อพเพอร์ตี้ ชนิดข้อมูล และค่าตัวอย่างอีกครั้ง แก้ไขส่วนที่จำเป็นแล้วส่งล็อกทดสอบใหม่ และสร้างซอร์สโค้ดสำหรับพัฒนาใหม่ให้สะท้อนการตั้งค่าอีเวนต์ที่เปลี่ยนไป
เมื่อตรวจสอบเสร็จแล้ว ให้ส่งซอร์สโค้ดที่ยืนยันแล้ว เวลาที่อีเวนต์ควรเกิดขึ้น และค่าที่จะส่งในแต่ละพร็อพเพอร์ตี้ให้นักพัฒนา เพื่อขอให้พัฒนาฟังก์ชันส่งล็อกจริง
วิธีนำโค้ดส่งอีเวนต์ไปใช้กับเกมจริงและส่งข้อมูล ดูได้ในตอนถัดไป "ส่งข้อมูลเกมเป็นล็อกอีเวนต์: การส่งล็อกอีเวนต์ ตอนที่ 3"
เริ่มต้นใช้งาน Hive Analytics
การส่งล็อกทดสอบหลังตั้งค่าอีเวนต์และพร็อพเพอร์ตี้ ช่วยให้ตรวจสอบโครงสร้างการเก็บข้อมูลและความเป็นไปได้ในการใช้เป็นตัวชี้วัดได้ก่อนขอให้เริ่มพัฒนา นำสิ่งที่พบระหว่างการตรวจสอบมาปรับเพื่อยืนยันการตั้งค่าอีเวนต์และซอร์สโค้ด แล้วส่งต่อให้นักพัฒนา
Hive Analytics เป็นโซลูชันวิเคราะห์ข้อมูลเฉพาะสำหรับเกมที่วิเคราะห์พฤติกรรมผู้ใช้และตัวชี้วัดของเกมจากอีเวนต์เกมที่เก็บผ่าน Hive SDK ลองส่งล็อกทดสอบใน Hive Analytics ได้เลยวันนี้ แล้วตรวจสอบว่าข้อมูลที่เก็บได้สร้างตัวชี้วัดที่ต้องการได้หรือไม่