คู่มือนี้จะอธิบายวิธีส่ง สตรีมเว็บและแอปของ Google Analytics Measurement Protocol กิจกรรมเป็น Google Analytics เพื่อให้คุณสามารถดูเหตุการณ์ Measurement Protocol ใน รายงาน Google Analytics
เลือกแพลตฟอร์มที่ต้องการดูในคู่มือนี้
จัดรูปแบบคำขอ
Measurement Protocol ของ Google Analytics รองรับเฉพาะคำขอ HTTP POST
หากต้องการส่งกิจกรรม ให้ใช้รูปแบบต่อไปนี้
POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>
คุณต้องระบุข้อมูลต่อไปนี้ใน URL ของคำขอ
api_secret
: ข้อมูลลับ API ที่สร้างขึ้นใน UI ของ Google Analyticsหากต้องการสร้างข้อมูลลับใหม่ ให้ไปที่ผู้ดูแลระบบ > สตรีมข้อมูล > เลือก สตรีมของคุณ > Measurement Protocol > สร้าง
measurement_id
: รหัสการวัดที่เชื่อมโยงกับสตรีม ซึ่งอยู่ในส่วน UI ของ Google Analytics ในส่วนผู้ดูแลระบบ > สตรีมข้อมูล > เลือก สตรีม > รหัสการวัดmeasurement_id
ไม่ใช่รหัสสตรีมของคุณ
ดูพารามิเตอร์การค้นหาสำหรับข้อมูลอ้างอิงแบบเต็ม
คุณต้องระบุข้อมูลต่อไปนี้ในเนื้อหาคำขอ
client_id
: ตัวระบุที่ไม่ซ้ำกันของลูกค้า วิธีนี้แตกต่างจาก Firebaseapp_instance_id
ใช้ gtag.js('get')
user_id
: ไม่บังคับ ตัวระบุที่ไม่ซ้ำกันสำหรับผู้ใช้ มีได้เฉพาะ UTF-8 อักขระ ดูข้อมูลเพิ่มเติมได้ที่ User-ID สําหรับการวิเคราะห์ข้ามแพลตฟอร์ม เกี่ยวกับตัวระบุนี้consent
: ไม่บังคับ ดูวิธีตั้งค่าความยินยอม การตั้งค่าtimestamp_micros
: ไม่บังคับ เวลา Unix Epoch ในหน่วยไมโครวินาทีสําหรับ เหตุการณ์และพร็อพเพอร์ตี้ผู้ใช้ในคำขอ หากไม่ได้ระบุไว้ จะมีค่าเริ่มต้นเป็น เวลาส่งคำขอevents
: อาร์เรย์ของรายการเหตุการณ์ คุณสามารถรวมหลายกิจกรรมไว้ในแคมเปญเดียว อีกครั้งวิธีแสดงกิจกรรมของผู้ใช้ในรายงาน เช่น เรียลไทม์ ต้องระบุ
engagement_time_msec
และsession_id
เป็นส่วนหนึ่งของparams
ในราคาevent
พารามิเตอร์engagement_time_msec
ควรแสดง เวลาในการมีส่วนร่วมของเหตุการณ์เป็นมิลลิวินาทีเช่น
{
"client_id": "123456.7654321",
"events": [
{
"name": "campaign_details",
"params": {
"campaign_id": "google_1234",
"campaign": "Summer_fun",
"source": "google",
"medium": "cpc",
"term": "summer+travel",
"content": "logolink",
"session_id": "123",
"engagement_time_msec": "100"
}
}
]
}
แม้ว่า session_start
จะเป็นกิจกรรมที่จองไว้
ชื่อ
การสร้าง session_id
ใหม่จะเป็นการสร้างเซสชันใหม่โดยไม่ต้องส่ง
session_start
ทำความเข้าใจว่าเซสชัน
นับได้
ลองใช้
นี่คือตัวอย่างที่คุณสามารถใช้เพื่อส่งเหตุการณ์ tutorial_begin
ไปยัง Google
เซิร์ฟเวอร์ Analytics:
const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;
fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
method: "POST",
body: JSON.stringify({
client_id: 'XXXXXXXXXX.YYYYYYYYYY',
events: [{
name: 'tutorial_begin',
params: {},
}]
})
});
ลบล้างการประทับเวลา
Measurement Protocol ใช้การประทับเวลาแรกที่พบในรายการต่อไปนี้ สำหรับแต่ละเหตุการณ์ในคำขอ
timestamp_micros
ของเหตุการณ์timestamp_micros
ของคำขอ- เวลาที่ Measurement Protocol ได้รับคำขอ
ตัวอย่างต่อไปนี้จะส่งการประทับเวลาระดับคำขอที่ใช้กับ
เหตุการณ์ในคำขอ ดังนั้น Measurement Protocol จะกำหนดทั้งฟิลด์
การประทับเวลาของ tutorial_begin
และเหตุการณ์ join_group
รายการ
requestUnixEpochTimeInMicros
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin"
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
ตัวอย่างต่อไปนี้จะส่งทั้งการประทับเวลาระดับคำขอและระดับเหตุการณ์
ของคุณ ดังนั้น Measurement Protocol จะกำหนด tutorial_begin
เหตุการณ์มีการประทับเวลา tutorialBeginUnixEpochTimeInMicros
และ join_group
การประทับเวลาเป็น requestUnixEpochTimeInMicros
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"events": [
{
"name": "tutorial_begin",
"timestamp_micros": tutorialBeginUnixEpochTimeInMicros
},
{
"name": "join_group",
"params": {
"group_id": "G_12345",
}
}
]
}
ข้อจำกัด
ข้อจำกัดต่อไปนี้มีผลกับการส่งเหตุการณ์ Measurement Protocol ไปยัง Google การวิเคราะห์:
- คำขอมีเหตุการณ์ได้สูงสุด 25 รายการ
- เหตุการณ์มีพารามิเตอร์ได้สูงสุด 25 รายการ
- เหตุการณ์มีพร็อพเพอร์ตี้ผู้ใช้ได้สูงสุด 25 รายการ
- ชื่อพร็อพเพอร์ตี้ผู้ใช้ต้องมีความยาวไม่เกิน 24 อักขระ
- ค่าพร็อพเพอร์ตี้ผู้ใช้ต้องมีความยาวไม่เกิน 36 อักขระ
- ชื่อเหตุการณ์ต้องมีอักขระไม่เกิน 40 ตัว และต้องประกอบด้วยตัวอักษรและตัวเลขเท่านั้น อักขระและขีดล่าง และต้องขึ้นต้นด้วยตัวอักษร
- ชื่อพารามิเตอร์ซึ่งรวมถึงพารามิเตอร์ของรายการต้องมีอักขระไม่เกิน 40 ตัว ต้องประกอบด้วยอักขระที่เป็นตัวอักษร ตัวเลข และเครื่องหมายขีดล่างเท่านั้น และต้องขึ้นต้นด้วย ที่มีอักขระเป็นพยัญชนะ
- ค่าพารามิเตอร์ ซึ่งรวมถึงค่าพารามิเตอร์ของรายการต้องยาว 100 อักขระ หรือ น้อยกว่าสําหรับพร็อพเพอร์ตี้ Google Analytics มาตรฐาน และไม่เกิน 500 อักขระ สำหรับพร็อพเพอร์ตี้ Google Analytics 360
- พารามิเตอร์รายการมีพารามิเตอร์ที่กําหนดเองได้สูงสุด 10 รายการ
- เนื้อหาของโพสต์ต้องเล็กกว่า 130 kB
- เหตุการณ์ Measurement Protocol ของแอปที่ส่งไปยัง Google Analytics ไม่ป้อนข้อมูลใน Search กลุ่มเป้าหมายใน Google Ads สำหรับผู้ใช้แอป
ดูข้อกำหนดเพิ่มเติมของแต่ละกรณีการใช้งานได้ที่กรณีการใช้งานทั่วไป