ข้ามไปที่เนื้อหา

การส่งบันทึกทดสอบ

โครงร่าง

คุณสามารถส่งบันทึกทดสอบเพื่อตรวจสอบว่าข้อมูลถูกรวบรวมตามที่ตั้งใจไว้หรือไม่ คุณสามารถทดสอบได้ทั้งในสภาพแวดล้อม Sandbox และสภาพแวดล้อม Production และไม่ว่าจะเป็นสภาพแวดล้อมใด การทดสอบจะดำเนินการตามขั้นตอนด้านล่าง

ขั้นตอน คำอธิบาย เมนู
1. ส่งบันทึกทดสอบ ส่งบันทึกทดสอบในสภาพแวดล้อมที่ต้องการทดสอบ ข้อมูล > เหตุการณ์ > แท็บ [การสร้างแหล่งที่มา] หรือแท็บ [ETL การจำลอง]
2. ตรวจสอบการรับข้อมูล ตรวจสอบว่าข้อมูลที่ส่งถูกรวบรวมแล้วหรือไม่ ข้อมูล > เหตุการณ์ > แท็บ [แสดงตัวอย่างข้อมูล] หรือ BigQuery
3. ตรวจสอบการกำหนดค่าเมตริก ตรวจสอบว่าคุณสามารถสร้างเมตริกที่ต้องการด้วยข้อมูลที่รวบรวมได้หรือไม่ Create (ชาร์ต, ช่องทาง, การเก็บรักษา, การจัดอันดับ ฯลฯ)

สภาพแวดล้อมการทดสอบ

สภาพแวดล้อม ปลายทางการส่ง ชุดข้อมูลที่จัดเก็บ การสะท้อนในเมตริก
Sandbox ที่อยู่รับข้อมูลของ Sandbox analytics_N_sandbox ไม่รวมอยู่ในเมตริกของ Production
Production ที่อยู่รับข้อมูลของ Production analytics_N_live รวมอยู่ในเมตริกของ Production

การทดสอบใน Production

บันทึกทดสอบที่ส่งไปยังสภาพแวดล้อม Production จะถูกรวมอยู่ในเมตริกจริง เพื่อไม่ให้ส่งผลกระทบต่อเมตริกจริง ให้เตรียมการดังต่อไปนี้ก่อนทำการทดสอบ

  1. รับ appId สำหรับการทดสอบโดยเฉพาะ

    ลงทะเบียนแอปทดสอบใน Hive Console > App Center เพื่อรับ appId สำหรับการทดสอบโดยเฉพาะ สำหรับรายละเอียด โปรดดูที่ การจัดการ App ID

  2. ยกเว้นข้อมูลทดสอบออกจากเมตริกด้วยเมนูใดเมนูหนึ่งต่อไปนี้

    เมนู วิธียกเว้น
    การจัดการผู้ใช้ที่ยกเว้นจากเมตริก ลงทะเบียนผู้ใช้ที่ใช้ในการทดสอบเป็นผู้ใช้ที่ยกเว้นจากเมตริก
    การจัดการตัวกรองเมตริก ลงทะเบียน appId ทดสอบหรือเซิร์ฟเวอร์ QA เป็นเงื่อนไขการยกเว้น
    การตั้งค่าเวลา ตั้งค่าวันเปิดตัวอย่างเป็นทางการเป็นวันเริ่มต้นของเมตริก เพื่อยกเว้นข้อมูลทดสอบก่อนเปิดตัว

1. ส่งบันทึกทดสอบ

ส่งบันทึกทดสอบในสภาพแวดล้อมที่ต้องการทดสอบ นักพัฒนาสามารถนำซอร์สโค้ดไปใช้และส่งเหตุการณ์จริงได้ ส่วนผู้ที่ไม่ใช่นักพัฒนาสามารถส่งข้อมูลตัวอย่างด้วยการจำลอง ETL ได้

วิธี สำหรับ คำอธิบาย
การสร้างแหล่งที่มา นักพัฒนา นำซอร์สโค้ดที่สร้างขึ้นไปใช้กับไคลเอนต์หรือเซิร์ฟเวอร์ของแอป จากนั้นทำให้เกิดเหตุการณ์ทดสอบเพื่อส่งบันทึก
ETL การจำลอง ผู้ที่ไม่ใช่นักพัฒนา ป้อนค่าฟิลด์ในคอนโซลเพื่อส่งข้อมูลตัวอย่างโดยไม่ต้องเขียนโค้ด

ส่งด้วยการสร้างแหล่งที่มา (นักพัฒนา)

  1. ใน ข้อมูล > เหตุการณ์ ให้เลือกเหตุการณ์ที่จะทดสอบ แล้วไปที่แท็บ [การสร้างแหล่งที่มา]
  2. ในแท็บ นักพัฒนาไคลเอนต์ หรือ นักพัฒนาเซิร์ฟเวอร์ ให้ตรวจสอบซอร์สโค้ดและนำไปใช้กับไคลเอนต์หรือเซิร์ฟเวอร์ของแอป
  3. ทำให้เกิดเหตุการณ์ทดสอบในสภาพแวดล้อมที่ต้องการทดสอบเพื่อส่งบันทึก
Note

หากส่งจากเซิร์ฟเวอร์ผ่าน Fluentd หรือ HTTP คุณต้องส่งไปยังที่อยู่รับข้อมูลของสภาพแวดล้อมที่ต้องการทดสอบ คุณสามารถดูที่อยู่รับข้อมูลของ Production และ Sandbox ได้ใน การส่งบันทึกเหตุการณ์

ส่งด้วยการจำลอง ETL (ผู้ที่ไม่ใช่นักพัฒนา)

  1. ในคอนโซล Analytics ของสภาพแวดล้อมที่ต้องการทดสอบ ให้ไปที่ ข้อมูล > เหตุการณ์ แล้วเลือกเหตุการณ์ที่จะทดสอบ
  2. ในแท็บ [ETL การจำลอง] ให้ป้อนค่าที่จะทดสอบลงในแต่ละฟิลด์ของตารางการรวบรวมเหตุการณ์
  3. คลิกปุ่ม ส่ง

สำหรับรายละเอียดเกี่ยวกับแท็บ [การสร้างแหล่งที่มา] และแท็บ [ETL การจำลอง] โปรดดูที่ เหตุการณ์


2. ตรวจสอบการรับข้อมูล

ตรวจสอบว่าบันทึกทดสอบที่ส่งถูกรวบรวมแล้วหรือไม่ด้วยวิธีใดวิธีหนึ่งต่อไปนี้

ตรวจสอบในแสดงตัวอย่างข้อมูล

ใน ข้อมูล > เหตุการณ์ ให้เลือกเหตุการณ์ที่ทดสอบ จากนั้นในแท็บ [แสดงตัวอย่างข้อมูล] ให้ตั้งค่าช่วงเวลาการค้นหาเป็นวันที่ที่ส่งบันทึกทดสอบแล้วทำการค้นหา

  • ตรวจสอบว่าบันทึกทดสอบปรากฏในรายการ
  • ตรวจสอบว่าค่าแอตทริบิวต์ที่ส่งถูกรวบรวมตามที่ตั้งใจไว้

ตรวจสอบโดยตรงใน BigQuery

หากคุณ ขอสิทธิ์การเข้าถึง BigQuery ในคอนโซล Analytics คุณจะสามารถค้นหาข้อมูลที่จัดเก็บไว้ได้โดยตรงใน BigQuery บันทึกเหตุการณ์จะถูกจัดเก็บไว้ในตาราง t_raw_event_log

SELECT userId, deviceId, appIdGroup, appId,
    DATETIME(TIMESTAMP_ADD(dateTime, INTERVAL 32400 SECOND)) AS dateTime_kst,  -- แปลง dateTime ที่จัดเก็บเป็น UTC เป็น KST
    SAFE_CAST(
            JSON_VALUE(attributes, '$.eventAttributes.level') AS INT64
        ) AS level -- เมื่อส่ง level เป็นแอตทริบิวต์ของเหตุการณ์
FROM `habq-storage.analytics_N_sandbox.t_raw_event_log`  -- ใช้ analytics_N_live หากทดสอบใน Production
WHERE identifierProvider = 'hive'  -- ระบบที่ออกตัวระบุผู้ใช้ (เป็น hive เสมอ)
  AND eventName = '{tested event name}'
  AND appId = 'com.sample.test.aos'  -- appId ที่ใช้ในการทดสอบ
  AND JSON_VALUE(attributes, '$.hiveAttributes._dataSource') IN ('custom_server', 'custom_sdk')  -- เฉพาะเหตุการณ์ที่คุณส่งโดยตรง (เซิร์ฟเวอร์, SDK)
  -- เมื่อค้นหาตามเวลา KST
  AND dateTime >= TIMESTAMP_SUB(TIMESTAMP('2026-09-30 00:00:00'), INTERVAL 32400 SECOND)
  AND dateTime <  TIMESTAMP_SUB(TIMESTAMP('2026-10-07 00:00:00'), INTERVAL 32400 SECOND)
  -- เมื่อลบรายการที่ซ้ำกันตาม checksum
  QUALIFY ROW_NUMBER() OVER (PARTITION BY checksum ORDER BY bigqueryRegistTimestamp DESC) = 1
LIMIT 100
  • t_raw_event_log เป็นตารางที่แบ่งพาร์ติชันรายวันตาม dateTime ดังนั้นให้ระบุเงื่อนไขวันที่เมื่อทำการค้นหา
  • บันทึกที่ละเมิดกฎการส่งจะถูกจัดเก็บไว้ในตาราง rescue (t_raw_event_log_rescue) ไม่ใช่ใน t_raw_event_log หากไม่พบข้อมูลของคุณ ให้ตรวจสอบ errorReason ในตาราง rescue

สำหรับโครงสร้างตารางและสาเหตุการกักกัน โปรดดูที่ โครงสร้างการจัดเก็บเหตุการณ์


3. ตรวจสอบการกำหนดค่าเมตริก

เมื่อยืนยันการรับข้อมูลแล้ว ให้สร้างชาร์ต ช่องทาง การเก็บรักษา การจัดอันดับ หรือรายการอื่นที่คล้ายกันจากเมนู Create เพื่อตรวจสอบว่าคุณสามารถสร้างเมตริกที่ต้องการด้วยข้อมูลที่รวบรวมได้หรือไม่

  • ตรวจสอบว่าแอตทริบิวต์ที่จะใช้เป็นค่าที่วัดและค่ามิติปรากฏในรายการให้เลือก
  • ตรวจสอบว่าผลการรวมข้อมูลตรงกับข้อมูลทดสอบที่ส่ง

สำหรับวิธีใช้แต่ละฟีเจอร์ โปรดดูที่ ชาร์ต, ช่องทาง, การเก็บรักษา และ การจัดอันดับ


ข้อควรระวัง & Tips

เหตุการณ์ที่ไม่รองรับ Sandbox

ข้อมูลการคืนเงินและ MMP (Airbridge ฯลฯ) ไม่ได้ถูกประมวลผลโดย Hive โดยตรง แต่บุคคลที่สาม เช่น มาร์เก็ต (Google Play ฯลฯ) หรือ MMP จะเป็นผู้ส่งข้อมูลมายัง Hive

บุคคลที่สามไม่มีสภาพแวดล้อม Sandbox และส่งข้อมูลมายัง Hive จากสภาพแวดล้อม Production เท่านั้น Hive จึงไม่สามารถแยกได้ว่าข้อมูลที่รวบรวมผ่านบุคคลที่สามมาจาก Production หรือ Sandbox ด้วยเหตุนี้ ข้อมูลที่ประมวลผลใน Sandbox อาจปรากฏรวมอยู่ในข้อมูลของ Production

  • บันทึกทดสอบที่ส่งไปยังสภาพแวดล้อม Production จะถูกรวมอยู่ในเมตริกจริง เมื่อทดสอบใน Production โปรดดูที่ การทดสอบใน Production เพื่อยกเว้นข้อมูลทดสอบออกจากเมตริก
  • ในฟิลด์ appId คุณต้องป้อน appId ที่ลงทะเบียนใน Hive Console > App Center หากป้อนค่าที่ไม่ถูกต้อง ข้อมูลอาจไม่ถูกรวบรวม

เมนูที่เกี่ยวข้อง