คู่มือนี้จะอธิบายวิธีต่อไปนี้
- จัดสรรเซิร์ฟเวอร์การติดแท็กบน App Engine ของ Google Cloud Platform (GCP)
- อัปเกรดเซิร์ฟเวอร์การติดแท็กเพื่อรองรับการเข้าชมแบบเรียลไทม์
- เพิ่มหรือลดจํานวนเซิร์ฟเวอร์ที่เรียกใช้คอนเทนเนอร์ Google Tag Manager
- อัปเดตเวอร์ชันเซิร์ฟเวอร์การติดแท็กอยู่เสมอหลังจากจัดสรรเซิร์ฟเวอร์
ข้อกำหนดเบื้องต้น
- คุณต้องมีบัญชี GCP หากยังไม่มีบัญชี ให้สร้างบัญชี GCP ใหม่
- คุณต้องมีบัญชีการเรียกเก็บเงิน GCP หากยังไม่มี ให้สร้างบัญชีการเรียกเก็บเงิน GCP (ต้องมีบทบาท "ผู้สร้างบัญชีการเรียกเก็บเงิน")
- คุณต้องมีบทบาทผู้สร้างโปรเจ็กต์และผู้ใช้บัญชีสำหรับการเรียกเก็บเงิน ดูข้อมูลเพิ่มเติมเกี่ยวกับการเพิ่มบทบาท
1. จัดสรรเซิร์ฟเวอร์
หากต้องการสร้างเซิร์ฟเวอร์การติดแท็กใหม่ในอินสแตนซ์ App Engine คุณต้องทำดังนี้
- สร้างคอนเทนเนอร์เซิร์ฟเวอร์ใหม่ใน Tag Manager
- สร้างโปรเจ็กต์ Google Cloud (GCP) ใหม่
- จัดสรรเซิร์ฟเวอร์การติดแท็ก App Engine ใหม่
- เพิ่ม URL ของเซิร์ฟเวอร์การติดแท็กใหม่ลงในคอนเทนเนอร์เซิร์ฟเวอร์ Tag Manager
สร้างคอนเทนเนอร์เซิร์ฟเวอร์ของ Google Tag Manager
เปิด Google Tag Manager
ในแถวบัญชี ให้คลิกเมนูรายการเพิ่มเติม > สร้างคอนเทนเนอร์
สร้างคอนเทนเนอร์ของเซิร์ฟเวอร์ใหม่
คลิกปุ่มตัวเลือก "จัดสรรเซิร์ฟเวอร์การติดแท็กด้วยตนเอง" โปรดดูค่ากําหนดของคอนเทนเนอร์ คุณต้องใช้เพื่อจัดสรรเซิร์ฟเวอร์
สร้างโปรเจ็กต์ GCP ใหม่
หากต้องการสร้างโปรเจ็กต์ GCP ใหม่สำหรับเซิร์ฟเวอร์การติดแท็ก ให้ทำดังนี้
เปิด Google Cloud Console
ตั้งชื่อโปรเจ็กต์ เราขอแนะนำให้ใช้รหัสคอนเทนเนอร์เพื่อความสะดวก ชื่อนี้จะใช้ใน GCP เท่านั้น
โปรดจดรหัสโปรเจ็กต์ GCP ไว้เนื่องจากคุณจะต้องใช้รหัสนี้สร้างเซิร์ฟเวอร์การติดแท็ก
จัดสรรเซิร์ฟเวอร์การติดแท็กใหม่
วิธีสร้างเซิร์ฟเวอร์การติดแท็ก
เปิด Cloud Shell
ตั้งค่าโปรเจ็กต์ GCP ใน Cloud Shell แทนที่
project ID
ด้วยรหัสโปรเจ็กต์ GCP ที่คุณบันทึกไว้ก่อนหน้านี้gcloud config set project project ID
สร้างเซิร์ฟเวอร์การติดแท็กโดยทำตามสคริปต์ Shell ตั้งค่าประเภทการติดตั้งเป็น
testing
bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
เพิ่ม URL ของเซิร์ฟเวอร์การติดแท็กลงใน Tag Manager
เปิด Google Tag Manager
ในส่วนผู้ดูแลระบบ > การตั้งค่าคอนเทนเนอร์ ให้คลิกเพิ่ม URL หากไม่ทราบ URL ของเซิร์ฟเวอร์ ให้เรียกใช้คำสั่งต่อไปนี้ใน Cloud Shell
gcloud app browse
ผลลัพธ์: คุณได้ตั้งค่าเซิร์ฟเวอร์การติดแท็กและจัดสรรเซิร์ฟเวอร์ด้วยการกำหนดค่า
testing
แล้ว ตอนนี้คุณทดสอบการติดแท็กฝั่งเซิร์ฟเวอร์ได้แล้ว
การกำหนดค่าเซิร์ฟเวอร์เริ่มต้น (testing
)
การกำหนดค่าการทดสอบเหมาะสำหรับการสำรวจผลิตภัณฑ์โดยการส่งการเข้าชมทดสอบจำนวนเล็กน้อยและใช้ฟีเจอร์ "แสดงตัวอย่าง" ใน Tag Manager การกำหนดค่านี้เป็นคลาสอินสแตนซ์ F1 ของ App Engine ในสภาพแวดล้อมมาตรฐาน และในกรณีส่วนใหญ่ คุณจะไม่มีค่าใช้จ่ายใดๆ
2. การใช้ App Engine ในเวอร์ชันที่ใช้งานจริง
ในการกำหนดค่า production
เซิร์ฟเวอร์แต่ละเครื่องมีค่าใช้จ่ายประมาณ $40 / เดือน (USD) เซิร์ฟเวอร์แต่ละเครื่องเป็นอินสแตนซ์ App Engine ที่มี vCPU 1 ตัว, หน่วยความจำ 0.5 GB, ดิสก์ 10 GB ในสภาพแวดล้อมแบบยืดหยุ่น
โปรดดู การจัดการค่าใช้จ่ายของ App Engine เพื่อทำความเข้าใจการเรียกเก็บเงินของ App Engine และวิธีกำหนดค่าการแจ้งเตือนการเรียกเก็บเงิน เราขอแนะนำให้คุณตั้งค่าการแจ้งเตือนการเรียกเก็บเงิน
การตั้งค่าเวอร์ชันที่ใช้งานจริงที่แนะนำ
เราขอแนะนำให้ใช้เซิร์ฟเวอร์อย่างน้อย 3 เครื่องเพื่อลดความเสี่ยงในการสูญเสียข้อมูลในกรณีที่เซิร์ฟเวอร์หยุดทำงาน อย่างไรก็ตาม คุณเลือกที่จะใช้เซิร์ฟเวอร์น้อยลง (หรือมากกว่า) ได้ เราคาดว่าการปรับขนาดอัตโนมัติของเซิร์ฟเวอร์ 3-6 เครื่อง (ค่าเริ่มต้น) จะจัดการคำขอได้ 50-200 คำขอต่อวินาที ประสิทธิภาพขึ้นอยู่กับจํานวนแท็กและสิ่งที่แท็กเหล่านั้นทํา
วิธีกำหนดค่าเซิร์ฟเวอร์การติดแท็ก
- เปิด Cloud Shell ของ Google Cloud Platform
- ตั้งค่าโปรเจ็กต์ Cloud Platform ใน Cloud Shell แทนที่
project ID
ด้วยรหัสโปรเจ็กต์ GCP ที่คุณจดไว้ก่อนหน้านี้gcloud config set project project ID
- หากต้องการกำหนดค่าเซิร์ฟเวอร์การติดแท็กใหม่สำหรับสภาพแวดล้อมที่ใช้งานจริง ให้เรียกใช้สคริปต์การตั้งค่าด้านล่าง ทำงานต่อไปนี้
bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
- เปลี่ยนประเภทการติดตั้งใช้งานเป็น
production
- ตั้งค่าเซิร์ฟเวอร์เพิ่มเติมเพื่อแสดงการเข้าชมเวอร์ชันที่ใช้งานจริง เราขอแนะนำให้มีเซิร์ฟเวอร์อย่างน้อย 3 เครื่อง
- เปลี่ยนประเภทการติดตั้งใช้งานเป็น
ไม่บังคับ: ปิดใช้การบันทึก
ขอการบันทึก
โดยค่าเริ่มต้น App Engine จะบันทึกข้อมูลเกี่ยวกับคําขอแต่ละรายการ (เช่น เส้นทางคําขอ พารามิเตอร์การค้นหา ฯลฯ) ที่ได้รับ หากเซิร์ฟเวอร์การติดแท็กจัดการคําขอจํานวนมากต่อเดือน (เช่น มากกว่า 1 ล้านรายการ) ข้อความบันทึกเหล่านั้นอาจทําให้เกิดการเรียกเก็บเงินสำหรับการบันทึกจํานวนมาก หากต้องการลดหรือหลีกเลี่ยงการเรียกเก็บเงินสำหรับการบันทึก เราขอแนะนำให้ปิดใช้การบันทึกคําขอ App Engine
วิธีปิดใช้การบันทึกคําขอ App Engine
- ในแพลตฟอร์ม Google Cloud ให้เปิดLogs Router ตรวจสอบว่าคุณอยู่ในโปรเจ็กต์ที่ตรงกับรหัสคอนเทนเนอร์
- สำหรับบรรทัดประเภท: ที่เก็บข้อมูลบันทึกของ Cloud, ชื่อ: _Default ให้เลือกเมนูรายการเพิ่มเติม แล้วคลิกแก้ไขที่ส่งออก
- ในส่วนปลายทางที่ส่งออก ให้เลือกที่เก็บข้อมูลบันทึก _Default
เพิ่มบรรทัดใหม่ในส่วนเลือกบันทึกที่จะรวมไว้ในซิงก์ ป้อนกฎต่อไปนี้ลงในตัวกรองการรวมที่มีอยู่
NOT LOG_ID("appengine.googleapis.com/nginx.request") AND NOT LOG_ID("appengine.googleapis.com/request_log")
หากต้องการปิดใช้การบันทึกจากตัวจัดสรรภาระงานด้วย ให้เพิ่มบรรทัดใหม่และป้อนกฎต่อไปนี้ลงในตัวกรองการรวมที่มีอยู่
NOT LOG_ID("requests")
อัปเดตซิงค์เพื่อใช้การเปลี่ยนแปลง ตอนนี้คำขอ App Engine จะถูกยกเว้นจากการบันทึก
ยืนยันว่าไม่มีคำขอใหม่ปรากฏในบันทึกของเครื่องมือสำรวจบันทึก
การบันทึกในคอนโซล
เซิร์ฟเวอร์การติดแท็ก ไคลเอ็นต์ หรือแท็กในคอนเทนเนอร์สามารถบันทึกข้อความไปยังคอนโซล ซึ่งอาจทำให้เกิดการเรียกเก็บเงินสำหรับการบันทึก หากต้องการลดหรือหลีกเลี่ยงการเรียกเก็บเงินสำหรับการบันทึก คุณสามารถปิดใช้ข้อความบันทึกคอนโซลที่ไม่ต้องการได้
ระบุบันทึกที่ไม่ต้องการในคอนโซล
- เปิด Logs Explorer ใน GCP
มองหาข้อความบันทึกที่ไม่ต้องการซึ่งมาจากแท็ก เช่น
แท็กอาจส่งบันทึกต่อไปนี้
const logToConsole = require('logToConsole'); logToConsole('Custom message: ' + data.param1); logToConsole('An important message to keep around!'); data.gtmOnSuccess()
ค้นหาข้อความในบันทึกที่เกี่ยวข้องในช่อง
textPayload
วิธีปิดใช้ข้อความบันทึกคอนโซล
- ในแพลตฟอร์ม Google Cloud ให้เปิดLogs Router ตรวจสอบว่าคุณอยู่ในโปรเจ็กต์ที่ตรงกับรหัสคอนเทนเนอร์
- สำหรับบรรทัดประเภท: ที่เก็บข้อมูลบันทึกของ Cloud, ชื่อ: _Default ให้เลือกเมนูรายการเพิ่มเติม แล้วคลิกแก้ไขที่ส่งออก
- ในส่วนปลายทางที่ส่งออก ให้เลือกที่เก็บข้อมูลบันทึก _Default
เพิ่มบรรทัดใหม่ในส่วนเลือกบันทึกที่จะรวมไว้ในซิงก์ ป้อนกฎต่อไปนี้ลงในตัวกรองการรวมที่มีอยู่
NOT textPayload:"Custom message:"
สําหรับบันทึกคอนโซล ให้แทนที่ข้อความ Custom message: ด้วยสตริงย่อยจากบันทึกคอนโซลที่ต้องการปิดใช้ สำหรับตัวกรองที่ละเอียดขึ้น ให้ใช้ภาษาของคำค้นหาการบันทึก
อัปเดตซิงค์เพื่อใช้การเปลี่ยนแปลง
logToConsole
ข้อความที่ตรงกันควรได้รับการยกเว้นจากการบันทึกยืนยันว่าไม่มีข้อความบันทึกคอนโซลใหม่ปรากฏในเครื่องมือสำรวจบันทึก
3. แมปการติดตั้งใช้งานกับโดเมนที่กำหนดเอง
การติดตั้งใช้งานการติดแท็กฝั่งเซิร์ฟเวอร์เริ่มต้นจะโฮสต์ในโดเมน App Engine เราขอแนะนําให้คุณแก้ไขการติดตั้งใช้งานเพื่อใช้โดเมนย่อยของเว็บไซต์
แมปโดเมนย่อยของเว็บไซต์กับเซิร์ฟเวอร์การติดแท็ก
4. เพิ่ม URL ของเซิร์ฟเวอร์ลงใน Google Tag Manager
เมื่อคุณมีเซิร์ฟเวอร์แล้ว คุณจะต้องตรวจสอบว่า Google Tag Manager รู้ว่าควรใช้เซิร์ฟเวอร์ของคุณ
เปิด Google Tag Manager
คลิกคอนเทนเนอร์เซิร์ฟเวอร์ที่ต้องการชี้ไปยังเซิร์ฟเวอร์การติดแท็ก
เปิดการตั้งค่าคอนเทนเนอร์ของเซิร์ฟเวอร์ในแท็บผู้ดูแลระบบ > การตั้งค่าคอนเทนเนอร์
คลิกเพิ่ม URL แล้ววาง URL ของเซิร์ฟเวอร์
บันทึกและกลับไปที่พื้นที่ทำงาน
5. การตรวจสอบความถูกต้อง
เมื่อตั้งค่าเซิร์ฟเวอร์การติดแท็กแล้ว ให้ตรวจสอบว่าเซิร์ฟเวอร์ทํางานตามที่ต้องการ ในพื้นที่ทํางานของ Tag Manager ให้คลิกปุ่มแสดงตัวอย่าง หากหน้าตัวอย่างโหลดขึ้นมา แสดงว่าทุกอย่างตั้งค่าถูกต้องแล้ว
การแสดงตัวอย่าง URL หลายรายการ
หากคุณได้แมปโดเมนหลายโดเมนกับเซิร์ฟเวอร์การติดแท็กเดียว โปรดตรวจสอบว่าได้เพิ่ม URL แต่ละรายการลงในการตั้งค่าคอนเทนเนอร์แล้ว
หากระบุ URL หลายรายการ เส้นทางทั้งหมด (สตริงที่อยู่หลังชื่อโดเมน) จะต้องตรงกัน
Works | ไม่ทำงาน |
---|---|
URL 1: example.com/abc URL 2: example2.com/abc |
URL 1: example.com/abc URL 2: example2.com/def |
หากเพิ่ม URL หลายรายการ คุณจะเห็นไอคอนข้างปุ่มแสดงตัวอย่าง ซึ่งช่วยให้คุณเลือก URL ที่จะแสดงตัวอย่างได้
อัปเดตเวอร์ชันเซิร์ฟเวอร์การติดแท็ก
การอัปเดตเซิร์ฟเวอร์การติดแท็กใหม่มีการแก้ไขช่องโหว่ด้านความปลอดภัยและฟีเจอร์ใหม่ๆ เราขอแนะนำให้อัปเดตเซิร์ฟเวอร์การติดแท็กสำหรับเวอร์ชันหลักแต่ละเวอร์ชัน (เช่น การอัปเกรดจากเวอร์ชัน 1.x.x เป็น 2.x.x) เป็นอย่างน้อย เมื่อ Tag Manager แจ้งให้คุณอัปเดต
หากต้องการอัปเดตเซิร์ฟเวอร์การติดแท็ก ให้เรียกใช้สคริปต์การตั้งค่าอีกครั้งโดยใช้การตั้งค่าเดียวกับที่ใช้ก่อนหน้านี้ ระบบจะกำหนดการตั้งค่าที่มีอยู่โดยค่าเริ่มต้น
วิธีอัปเดตเซิร์ฟเวอร์การติดแท็ก
- เปิด Cloud Shell ของ Google Cloud Platform
- ตั้งค่าโปรเจ็กต์ Cloud Platform ใน Cloud Shell แทนที่
project ID
ด้วยรหัสโปรเจ็กต์ GCP ที่คุณจดไว้ก่อนหน้านี้gcloud config set project project ID
- เรียกใช้สคริปต์การตั้งค่าโดยใช้การตั้งค่าเดียวกับที่ใช้ก่อนหน้านี้ ระบบจะตั้งค่าที่มีอยู่โดยค่าเริ่มต้น
bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
วิธียืนยันว่าการอัปเดตสำเร็จ
- ในคอนเทนเนอร์เซิร์ฟเวอร์ ให้คลิกปุ่มแสดงตัวอย่างเพื่อเริ่มเซสชันแก้ไขข้อบกพร่องใหม่และส่งคําขอในแท็บแยกต่างหาก
- ในสรุป ให้เลือกแท็บคอนโซล และตรวจสอบว่าไม่มีข้อความขอให้คุณอัปเดตเซิร์ฟเวอร์การติดแท็ก
Tag Manager อาจแสดงข้อความที่ขอให้คุณอัปเดตเซิร์ฟเวอร์การติดแท็กเป็นเวลาไม่เกิน 1 วันหลังจากอัปเดตเซิร์ฟเวอร์สำเร็จ อย่างไรก็ตาม หน้าตัวอย่างจะแสดงข้อความล่าสุดเกี่ยวกับเวอร์ชันเซิร์ฟเวอร์การติดแท็ก
แก้ปัญหาการหมดเวลาของการติดตั้งใช้งานเวอร์ชันที่ใช้งานจริง
เมื่อคุณเรียกใช้สคริปต์การตั้งค่าเพื่อสร้างหรือกําหนดค่าเซิร์ฟเวอร์ติดแท็กใหม่ สคริปต์อาจหมดเวลา ปัญหานี้อาจเกิดจากสาเหตุหลายประการ ลักษณะที่พบบ่อยที่สุด 2 ประการ ได้แก่
บัญชีบริการมีสิทธิ์ไม่ถูกต้อง - บัญชีบริการ Compute Engine และ App Engine มีหน้าที่รับผิดชอบในการติดตั้งใช้งานและดูแลรักษาการติดตั้งใช้งานเวอร์ชันที่ใช้งานจริง โดยค่าเริ่มต้น ระบบจะกําหนดค่าผู้ใช้เหล่านี้ล่วงหน้าด้วยสิทธิ์ที่เหมาะสม อย่างไรก็ตาม ในบางกรณี นโยบายขององค์กรอาจทําให้ข้อมูลไม่ถูกต้อง
- ไปที่หน้า IAM และผู้ดูแลระบบในแถบนำทางด้านซ้ายในคอนโซล Google Cloud
- ค้นหาบัญชีบริการ Compute Engine
<project_number>-compute@developer.gserviceaccount.com
และบัญชีบริการ App Engine<project_name>@appspot.gserviceaccount.com
- บัญชีบริการทั้ง 2 บัญชีต้องมีบทบาท
Editor
หากบัญชีใดไม่มีบทบาทEditor
ให้อัปเดตบทบาทโดยคลิกไอคอนดินสอทางด้านขวาของบัญชี คลิกเมนูแบบเลื่อนลงของบทบาทที่มีอยู่ เลื่อนขึ้นไปด้านบน แล้วคลิกโปรเจ็กต์ จากนั้นคลิกผู้แก้ไข
โควต้าไม่เพียงพอ - การติดตั้งใช้งานเวอร์ชันที่ใช้งานจริงจะใช้โควต้าของ Compute Engine หากโปรเจ็กต์มีโควต้าไม่เพียงพอ การทำให้ใช้งานได้อาจหมดเวลาขณะพยายามจัดสรรทรัพยากร
- ไปที่หน้า IAM และผู้ดูแลระบบในแถบนำทางด้านซ้ายใน Google Cloud Console แล้วคลิกแท็บโควต้าในแถบนำทางด้านซ้าย
- คลิกกล่องข้อความที่ระบุว่ากรองตารางที่ด้านบนของหน้า แล้วพิมพ์
Compute Engine API
คลิกผลการค้นหารายการเดียว - ตรวจสอบว่าสถานะโควต้าทั้งหมดอยู่ภายในขีดจำกัดหรือมีเครื่องหมายถูกสีเขียว
- ค้นหาและคลิกCPU ยืนยันว่าการใช้งานปัจจุบันบวกด้วยจํานวนอินสแตนซ์ที่ติดตั้งใช้งานจะยังคงต่ำกว่าขีดจํากัดของภูมิภาคที่ติดตั้งใช้งาน