ตรวจสอบข้อมูลการปรับเปลี่ยนในแบบของคุณด้วย BigQuery

Remote Config Personalization จะบันทึกเหตุการณ์ personalization_assignment Analytics เมื่อมีการกำหนด Personalization ให้กับผู้ใช้ ซึ่งช่วยให้คุณ ใช้ BigQuery เพื่อตรวจสอบและ วิเคราะห์เหตุการณ์ Personalization และเหตุการณ์ที่เกี่ยวข้องได้

ส่วนต่อไปนี้จะอธิบายวิธีเปิดใช้การส่งออก BigQuery สำหรับเหตุการณ์ Analytics วิธีจัดเก็บเหตุการณ์ Personalization และแสดงตัวอย่างการค้นหาพื้นฐาน เพื่อให้คุณเริ่มต้นใช้งานได้

เปิดใช้การส่งออก BigQuery สำหรับ Google Analytics สำหรับ Firebase

หากใช้แพ็กเกจ Spark คุณสามารถใช้ BigQueryแซนด์บ็อกซ์เพื่อ เข้าถึง BigQueryได้โดยไม่มีค่าใช้จ่าย โดยขึ้นอยู่กับ ขีดจำกัดของแซนด์บ็อกซ์ ดูข้อมูลเพิ่มเติมได้ที่ การกำหนดราคาและแซนด์บ็อกซ์ของ BigQuery

ขั้นแรก ตรวจสอบว่าคุณได้ส่งออกข้อมูล Analytics ไปยัง BigQuery แล้ว โดยทำดังนี้

  1. ในคอนโซล Firebase ให้ไปที่ Settings > Integrations

  2. คลิกลิงก์ ในการ์ด BigQuery หรือหากคุณใช้ BigQueryกับบริการอื่นๆ ของ Firebase อยู่แล้ว ให้คลิกจัดการ

  3. อ่านข้อมูลเกี่ยวกับการลิงก์ Firebase กับ BigQuery แล้วคลิกถัดไป

  4. ในส่วนกำหนดค่าการผสานรวม ให้เปิดใช้ปุ่มเปิด/ปิด Google Analytics

  5. เลือกภูมิภาคและเลือกการตั้งค่าการส่งออก

  6. คลิก ลิงก์กับ BigQuery

ตารางอาจพร้อมใช้งานภายใน 1 วัน ทั้งนี้ขึ้นอยู่กับวิธีที่คุณเลือกส่งออกข้อมูล ดูข้อมูลเพิ่มเติมเกี่ยวกับการส่งออกข้อมูลโปรเจ็กต์ไปยัง BigQuery ได้ที่หัวข้อ ส่งออกข้อมูลโปรเจ็กต์ไปยัง BigQuery

จากนั้น มาดูและตรวจสอบเหตุการณ์ Personalization ใน BigQuery กัน

เข้าถึงข้อมูล Personalization โดยใช้ BigQueryRemote Config

วิธีค้นหาข้อมูล Analytics สำหรับการทดสอบ

  1. เปิด BigQuery ใน Google Cloud คอนโซล นอกจากนี้ คุณ ยังเปิด BigQuery ได้โดยตรงจากคอนโซล Firebase โดย ไปที่แดชบอร์ด Analytics > เหตุการณ์ แล้วใช้ลิงก์ดูเหตุการณ์ดิบใน BigQuery ที่ด้าน ล่างของหน้า

  2. เลือกโปรเจ็กต์ Firebase แล้วขยายโปรเจ็กต์ จากนั้นขยายรายการ analytics_ANALYTICS_PROPERTY_ID แล้วคลิก events_

    เข้าถึงเหตุการณ์การปรับเปลี่ยนในแบบของคุณใน Cloud Console

  3. เลือกในแท็บใหม่ จากเมนูแบบเลื่อนลงการค้นหา

    ตัวอย่างการค้นหาที่สร้างขึ้นโดยอัตโนมัติจะปรากฏขึ้น

  4. หากต้องการดูเหตุการณ์ Personalization และข้อมูลที่เกี่ยวข้อง ให้แก้ไขการค้นหาเพื่อเลือกเหตุการณ์ personalization_assignment ตัวอย่างการค้นหาต่อไปนี้จะแสดงผลเหตุการณ์การกำหนด Personalization ทั้งหมดสำหรับ Shard วันที่ที่เฉพาะเจาะจง โดยจำกัดผลลัพธ์ไว้ที่ 10 รายการ

    # Select all personalization_assignment events
    SELECT *
    FROM `PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10
    

    เคล็ดลับ: หากต้องการค้นหาตารางเหตุการณ์ทั้งหมดแทนตารางที่แบ่งส่วน คุณสามารถ แทนที่วันที่ของตารางเหตุการณ์ด้วยเครื่องหมายดอกจัน (เช่น PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_*) เราไม่แนะนำให้ใช้วิธีนี้ในสถานการณ์ที่ไม่ใช่การทดสอบหรือสำหรับชุดข้อมูลขนาดใหญ่

  5. ในตัวแต่งการค้นหา ให้เลือกเรียกใช้การค้นหา ผลลัพธ์จะปรากฏในบานหน้าต่างด้านล่าง

ในส่วนถัดไป เราจะพูดถึงรายละเอียดเพิ่มเติมเกี่ยวกับสิ่งที่รวมอยู่ในเหตุการณ์การกำหนด Personalization

ระบบจะส่งออกข้อมูล Personalization ใดไปยัง BigQuery

ข้อมูล Personalization จะรวมอยู่ในตาราง Google Analytics ใน BigQuery และจัดเก็บไว้ในเหตุการณ์ personalization_assignment

ช่องพื้นฐานที่ระบุไว้ในเหตุการณ์ Personalization จะเหมือนกับเหตุการณ์ Analyticsอื่นๆ ตามที่อธิบายไว้ใน [GA4] BigQueryสคีมาการส่งออก โดยส่วนใหญ่คุณจะต้องดู user_pseudo_id(ซึ่งใช้แยกความแตกต่างระหว่างผู้ใช้แต่ละรายได้) การประทับเวลาของเหตุการณ์ และพร็อพเพอร์ตี้อื่นๆ ของผู้ใช้

รายละเอียดเฉพาะของ Personalization จะจัดเก็บไว้ในช่อง event_params และอธิบายไว้ในตารางต่อไปนี้

พารามิเตอร์ ประเภทข้อมูล คำอธิบาย
personalization_id STRING ระบุตัวระบุที่ไม่ซ้ำกันทั่วโลก (UUID) ของ Personalization ที่กำหนด
group STRING ระบุว่าผู้ใช้ได้รับการกำหนดให้เป็นกลุ่ม Personalization (P13N) หรือกลุ่มพื้นฐาน (BASELINE)
arm_index INTEGER แสดงค่าอื่นที่กำหนดให้กับผู้ใช้ ซึ่งเป็นจำนวนเต็ม ระหว่าง 0 ถึง 4
arm_key STRING มีชื่อพารามิเตอร์ที่ Personalization ใช้
arm_value STRING มีสตริงค่าอื่นที่ Personalization กำหนด
engaged_session_event INTEGER รวมจำนวนเซสชันที่ผู้ใช้มีส่วนร่วม ดูข้อมูลเพิ่มเติมได้ที่ ข้อมูลเกี่ยวกับเซสชัน
firebase_event_origin STRING ระบุแหล่งที่มาของเหตุการณ์ ค่านี้จะเป็น fp เสมอสำหรับ personalization_assignment เหตุการณ์
firebase_screen_class STRING ระบุชื่อคลาสของหน้าจอที่ผู้ใช้ใช้งานอยู่เมื่อ มีการกำหนด Personalization ดูข้อมูลเพิ่มเติมได้ที่ เหตุการณ์ที่รวบรวมโดยอัตโนมัติ
firebase_screen_id INTEGER แสดงรหัสของหน้าจอที่ผู้ใช้ดูอยู่เมื่อมีการกำหนด Personalization ดูข้อมูลเพิ่มเติมได้ที่ เหตุการณ์ที่รวบรวมโดยอัตโนมัติ
first_open_time STRING ระบุการประทับเวลาเป็นมิลลิวินาที UTC ของครั้งแรกที่ผู้ใช้ เปิดแอป ดู เหตุการณ์ที่รวบรวมโดยอัตโนมัติสำหรับข้อมูลเพิ่มเติม
ga_session_id INTEGER ระบุรหัสเซสชัน Google Analytics ดูข้อมูลเพิ่มเติมได้ที่ ข้อมูลเกี่ยวกับเซสชัน คุณสามารถใช้รหัสนี้เพื่อเชื่อมโยงเหตุการณ์ personalization_assignment กับเหตุการณ์ Analytics อื่นๆ
ga_session_number INTEGER ระบุหมายเลขเซสชัน Google Analytics ดูข้อมูลเพิ่มเติมได้ที่ ข้อมูลเกี่ยวกับเซสชัน

ตัวอย่างการค้นหา

คุณสามารถใช้คำสั่ง SQL เช่นคำสั่งต่อไปนี้เพื่อแยกพารามิเตอร์เฉพาะของ Personalization ออกจากเหตุการณ์ personalization_assignment

    # Expand nested personalization parameters
    SELECT
     timestamp_micros(event_timestamp) AS event_time,
     user_pseudo_id,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'group'
     ) AS personalization_group,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'personalization_id'
     ) AS personalization_id,
     (
       SELECT event_params.value.string_value,
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_key'
     ) AS arm_key,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_value'
     ) AS arm_value,
     (
       SELECT event_params.value.int_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'ga_session_id'
     ) AS ga_session_id,
    FROM `PROJECT_NAME.analytics_ANALYTICS_ACCOUNT_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10