ตั้งค่าการติดแท็กฝั่งเซิร์ฟเวอร์ด้วย Cloud Run

คู่มือนี้จะอธิบายวิธีการต่อไปนี้

  • จัดสรรเซิร์ฟเวอร์แสดงตัวอย่างเพื่อเปิดใช้ฟีเจอร์แสดงตัวอย่างสำหรับคอนเทนเนอร์
  • จัดสรรเซิร์ฟเวอร์การติดแท็กเพื่อจัดการการเข้าชมแบบเรียลไทม์
  • เพิ่มหรือลดจำนวนเซิร์ฟเวอร์ที่เรียกใช้คอนเทนเนอร์ Google Tag Manager
  • โปรดอัปเดตเวอร์ชันเซิร์ฟเวอร์การติดแท็กอยู่เสมอหลังจากจัดสรรเซิร์ฟเวอร์

ข้อกำหนดเบื้องต้น

  1. คุณต้องมีบัญชี GCP หากยังไม่มีบัญชี ให้สร้างบัญชี GCP ใหม่
  2. คุณต้องมีบัญชีสำหรับการเรียกเก็บเงินของ GCP หากยังไม่มี ให้สร้างบัญชีการเรียกเก็บเงินของ GCP (ต้องมีบทบาทผู้สร้างบัญชีการเรียกเก็บเงิน)
  3. คุณต้องมีบทบาทผู้สร้างโปรเจ็กต์และผู้ใช้บัญชีสำหรับการเรียกเก็บเงิน ดูข้อมูลเพิ่มเติมเกี่ยวกับ การเพิ่มบทบาท

จัดสรรเซิร์ฟเวอร์สำหรับดูตัวอย่างและเซิร์ฟเวอร์การติดแท็ก

คุณจัดสรรบริการ Cloud Run ได้โดยอัตโนมัติใน Google Tag Manager หรือด้วยตนเองใน Google Cloud

แก้ไขการกำหนดค่าบริการ

วิธีเปลี่ยนการกำหนดค่าบริการ

  1. เปิด Cloud Run
  2. เลือกบริการที่ต้องการปรับ
  3. คลิกแก้ไขและทำให้การแก้ไขใหม่ใช้งานได้
  4. ทำการเปลี่ยนแปลงแล้วคลิกติดตั้งใช้งาน

ค่าใช้จ่ายของ Cloud Run

ในการกำหนดค่า Cloud Run นี้ เซิร์ฟเวอร์แต่ละเครื่องจะมีค่าใช้จ่ายประมาณ $45 /เดือน (USD) เซิร์ฟเวอร์แต่ละเครื่องเป็นอินสแตนซ์ Cloud Run ที่มี1 vCPU และหน่วยความจำ 0.5 GB โดยใช้รูปแบบการกำหนดราคาที่จัดสรร CPU เสมอ

เราขอแนะนำให้เรียกใช้อินสแตนซ์อย่างน้อย 2 รายการเพื่อลดความเสี่ยงในการสูญเสียข้อมูลในกรณีที่เซิร์ฟเวอร์หยุดทำงาน อย่างไรก็ตาม คุณอาจเลือกที่จะเรียกใช้เซิร์ฟเวอร์น้อยลง (หรือมากขึ้น) ก็ได้ เราคาดว่าการปรับขนาดอัตโนมัติของเซิร์ฟเวอร์ 2-10 เครื่องจะรองรับคำขอ 35-350 รายการต่อวินาที แม้ว่าประสิทธิภาพจะแตกต่างกันไปตามจำนวนแท็กและสิ่งที่แท็กเหล่านั้น ทำ

Cloud Run จะปรับขนาดตามโหลดแบบไดนามิก max-instancesการตั้งค่าคือ สถานการณ์ที่แย่ที่สุดสำหรับจำนวนเงินที่คุณจะต้องจ่ายสำหรับทรัพยากร Cloud Run จะไม่จัดสรรอินสแตนซ์จำนวนมากดังกล่าว เว้นแต่จะจำเป็น

การประมาณค่าใช้จ่ายของ Cloud Run

หากต้องการประเมินค่าใช้จ่ายรายเดือนในการเรียกใช้เซิร์ฟเวอร์การติดแท็ก ให้ใช้เครื่องคำนวณราคาของ Google Cloud เครื่องคำนวณจะเปิดขึ้น พร้อมค่าประมาณที่กำหนดค่าไว้ล่วงหน้าสำหรับการติดตั้งใช้งานการติดแท็กฝั่งเซิร์ฟเวอร์เริ่มต้น คุณ สามารถปรับการตั้งค่าเพื่อให้ได้ค่าประมาณที่แม่นยำยิ่งขึ้นตามการเข้าชมที่คาดไว้

ไม่บังคับ: การย้ายข้อมูลจาก App Engine

หากก่อนหน้านี้คุณได้สร้างการติดตั้งใช้งาน App Engine และยืนยันว่าการติดตั้งใช้งานดังกล่าว ไม่ได้รับการเข้าชมอีกต่อไป ให้ปิดใช้แอปพลิเคชัน App Engine เพื่อป้องกันการเรียกเก็บเงินที่ไม่คาดคิด

ไม่บังคับ: การติดตั้งใช้งานแบบหลายภูมิภาค

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

ก่อนจะเริ่ม

  1. สร้างตัวจัดสรรภาระงาน
  2. จดBACKEND_NAMEที่คุณเลือกไว้

วิธีเพิ่มภูมิภาคในการติดตั้งใช้งาน

  1. แทนที่ REGION ด้วยภูมิภาคที่ เซิร์ฟเวอร์แสดงตัวอย่างได้รับการติดตั้งใช้งาน ช่องนี้อาจกรอกข้อมูลไว้แล้วหากคุณทำตาม ตัวเลือกบรรทัดคำสั่งเพื่อจัดสรรเซิร์ฟเวอร์แสดงตัวอย่างและเซิร์ฟเวอร์การติดแท็ก
  2. แทนที่ CONTAINER_CONFIG ด้วยสตริงการกำหนดค่าคอนเทนเนอร์ จาก Tag Manager ระบบอาจกรอกข้อมูลนี้ให้แล้วหากคุณทำตาม ตัวเลือกบรรทัดคำสั่งเพื่อจัดสรรเซิร์ฟเวอร์แสดงตัวอย่างและเซิร์ฟเวอร์ติดแท็ก
  3. แทนที่ NEW_REGION ด้วยภูมิภาคใหม่ที่คุณต้องการ ให้ติดตั้งใช้งานเซิร์ฟเวอร์การติดแท็ก
  4. แทนที่ BACKEND_NAME ด้วยชื่อที่คุณเลือก ขณะจัดสรรตัวจัดสรรภาระงาน
  5. ไม่บังคับ: หากต้องการเพิ่มภูมิภาคอื่น ให้แทนที่ตัวแปร NEW_REGION แล้วเรียกใช้โค้ด อีกครั้ง
    gcloud run deploy "server-side-tagging" \
    --region NEW_REGION \
    --image gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable \
    --platform managed \
    --ingress all \
    --min-instances 2 \
    --max-instances 10 \
    --timeout 60 \
    --allow-unauthenticated \
    --no-cpu-throttling \
    --update-env-vars PREVIEW_SERVER_URL="$(
      gcloud run services describe server-side-tagging-preview \--region "REGION" \
      --format="value(status.url)")",CONTAINER_CONFIG="CONTAINER_CONFIG" && \

    gcloud compute network-endpoint-groups create server-side-tagging-neg \
    --region=NEW_REGION \
    --network-endpoint-type=SERVERLESS \
    --cloud-run-service="server-side-tagging" && \

    gcloud compute backend-services add-backend --global "BACKEND_NAME" \
    --network-endpoint-group-region=NEW_REGION \
    --network-endpoint-group=server-side-tagging-neg

ไม่บังคับ: ปิดใช้การบันทึก

การบันทึกคำขอ

โดยค่าเริ่มต้น ระบบจะบันทึกข้อมูลเกี่ยวกับคำขอทุกรายการ (เช่น เส้นทางคำขอ พารามิเตอร์การค้นหา ฯลฯ) หากเซิร์ฟเวอร์การติดแท็กจัดการคำขอจำนวนมาก ต่อเดือน (เช่น มากกว่า 1 ล้านรายการ) ข้อความบันทึกเหล่านั้นอาจทำให้เกิดค่าใช้จ่ายในการบันทึกจำนวนมาก เราขอแนะนำให้ปิดใช้การบันทึกคำขอเพื่อลด หรือยกเลิกค่าใช้จ่ายในการบันทึก

วิธีปิดใช้การบันทึกคำขอ

  1. เปิดตัวจัดเส้นทางบันทึกใน Google Cloud Platform ตรวจสอบว่าคุณอยู่ในโปรเจ็กต์ที่ตรงกับรหัสคอนเทนเนอร์
    ภาพหน้าจอของตัวเลือกโปรเจ็กต์ GCP ซึ่งแสดงตัวอย่างรหัสคอนเทนเนอร์ Tag Manager
  2. สำหรับประเภท: บัคเก็ต Cloud Logging, ชื่อ: บรรทัด _Default ให้เลือก เมนูที่ล้น แล้วคลิกแก้ไข Sink
  3. ในส่วนปลายทางของ Sink ให้เลือกที่เก็บข้อมูลบันทึก _Default
  4. เพิ่มบรรทัดใหม่ในส่วนเลือกบันทึกเพื่อรวมไว้ในซิงก์ ป้อน กฎต่อไปนี้ลงในตัวกรองการรวมที่มีอยู่

    NOT LOG_ID("run.googleapis.com/requests")
    
  5. หากต้องการปิดใช้การบันทึกจากตัวโหลดบาลานซ์ด้วย ให้เพิ่มบรรทัดใหม่และป้อนกฎต่อไปนี้ลงในตัวกรองการรวมที่มีอยู่

    NOT LOG_ID("requests")
    
  6. อัปเดต Sink เพื่อใช้การเปลี่ยนแปลง ตอนนี้ระบบจะยกเว้นคำขอจากการบันทึก

  7. ตรวจสอบว่าไม่มีคำขอใหม่ปรากฏในบันทึกของเครื่องมือสำรวจบันทึก

การบันทึกคอนโซล

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

ระบุบันทึกคอนโซลที่ไม่ต้องการ

  1. เปิด Logs Explorer ใน GCP
  2. มองหาข้อความบันทึกที่ไม่ต้องการซึ่งมาจากแท็ก เช่น

    แท็กอาจส่งบันทึกต่อไปนี้

    const logToConsole = require('logToConsole');
    
    logToConsole('Custom message: ' + data.param1);
    logToConsole('An important message to keep around!');
    data.gtmOnSuccess()
    

    มองหาข้อความบันทึกที่เกี่ยวข้องในฟิลด์ textPayload
    ภาพหน้าจอของเครื่องมือสำรวจบันทึกของ GCP แสดงบันทึกตัวอย่าง

วิธีปิดใช้ข้อความบันทึกคอนโซล

  1. เปิดตัวจัดเส้นทางบันทึกใน Google Cloud Platform ตรวจสอบว่าคุณอยู่ในโปรเจ็กต์ที่ตรงกับรหัสคอนเทนเนอร์
    ภาพหน้าจอของตัวเลือกโปรเจ็กต์ GCP ซึ่งแสดงตัวอย่างรหัสคอนเทนเนอร์ Tag Manager
  2. สำหรับประเภท: บัคเก็ต Cloud Logging, ชื่อ: บรรทัด _Default ให้เลือก เมนูที่ล้น แล้วคลิกแก้ไข Sink
  3. ในส่วนปลายทางของ Sink ให้เลือกที่เก็บข้อมูลบันทึก _Default
  4. เพิ่มบรรทัดใหม่ในส่วนเลือกบันทึกเพื่อรวมไว้ในซิงก์ ป้อน กฎต่อไปนี้ลงในตัวกรองการรวมที่มีอยู่

    NOT textPayload:"Custom message:"
    

    สำหรับบันทึกคอนโซล ให้แทนที่ข้อความ Custom message: ด้วยสตริงย่อยจากบันทึกคอนโซลที่คุณต้องการปิดใช้ หากต้องการตัวกรองที่ซับซ้อนมากขึ้น ให้ใช้ภาษาในการค้นหาการบันทึก

  5. อัปเดต Sink เพื่อใช้การเปลี่ยนแปลง ไม่ควรรวมlogToConsole ข้อความที่ตรงกันไว้ในบันทึก

  6. ตรวจสอบว่าไม่มีข้อความบันทึกคอนโซลใหม่ปรากฏในเครื่องมือสำรวจบันทึก

2. แมปการติดตั้งใช้งานกับโดเมนที่กำหนดเอง

ตั้งค่าโดเมนที่กำหนดเองเพื่อใช้โดเมนอื่นที่ไม่ใช่ที่อยู่เริ่มต้นที่ Cloud Run มอบให้

3. เพิ่ม URL ของเซิร์ฟเวอร์ลงใน Google Tag Manager

ตอนนี้คุณมีเซิร์ฟเวอร์แล้ว จึงต้องตรวจสอบว่า Google Tag Manager ทราบว่า ควรใช้เซิร์ฟเวอร์ของคุณ

  1. เปิด Google Tag Manager

  2. คลิกคอนเทนเนอร์เซิร์ฟเวอร์ที่ต้องการชี้ไปยังเซิร์ฟเวอร์การติดแท็ก

  3. เปิดการตั้งค่าคอนเทนเนอร์ของเซิร์ฟเวอร์ในแท็บผู้ดูแลระบบ > การตั้งค่าคอนเทนเนอร์

  4. คลิกเพิ่ม URL แล้ววาง URL ของเซิร์ฟเวอร์

  5. บันทึกแล้วกลับไปที่พื้นที่ทำงาน

4. การตรวจสอบความถูกต้อง

เมื่อตั้งค่าเซิร์ฟเวอร์การติดแท็กแล้ว ให้ตรวจสอบว่าเซิร์ฟเวอร์ทํางานตามที่ต้องการ ในพื้นที่ทํางานของ Tag Manager ให้คลิกปุ่มแสดงตัวอย่าง หากหน้าตัวอย่างโหลด แสดงว่าตั้งค่าทุกอย่างถูกต้องแล้ว

การแสดงตัวอย่าง URL หลายรายการ

หากคุณแมปโดเมนหลายโดเมนกับเซิร์ฟเวอร์การติดแท็กเดียว โปรดตรวจสอบว่าได้เพิ่ม URL แต่ละรายการลงในการตั้งค่าคอนเทนเนอร์แล้ว

หากคุณระบุ URL หลายรายการ เส้นทางทั้งหมด (สตริงหลังชื่อโดเมน) ต้องตรงกัน

ผลงาน ใช้งานไม่ได้
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 แจ้งให้คุณอัปเดต

หากต้องการอัปเดตเซิร์ฟเวอร์การติดแท็ก ให้ติดตั้งใช้งานการแก้ไขใหม่โดยใช้การตั้งค่าเดียวกับที่ใช้ก่อนหน้านี้

  1. เปิด Cloud Run
  2. เลือกบริการที่ต้องการอัปเดต
  3. คลิกแก้ไขและทำให้การแก้ไขใหม่ใช้งานได้
  4. ตรวจสอบว่าได้ตั้งค่า URL ของอิมเมจคอนเทนเนอร์เป็น gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable แล้วคลิกทําให้ใช้งานได้

วิธียืนยันว่าการอัปเดตสำเร็จ

  1. ในคอนเทนเนอร์ฝั่งเซิร์ฟเวอร์ ให้คลิกปุ่มแสดงตัวอย่างเพื่อเริ่มเซสชันแก้ไขข้อบกพร่องใหม่และส่งคำขอในแท็บแยกต่างหาก
  2. ในสรุป ให้เลือกแท็บคอนโซล และตรวจสอบว่าไม่มีข้อความที่ขอให้คุณอัปเดตเซิร์ฟเวอร์การติดแท็ก

Tag Manager อาจแสดงข้อความที่ขอให้อัปเดตเซิร์ฟเวอร์การติดแท็กเป็นเวลาสูงสุด 1 วันหลังจากที่อัปเดตเซิร์ฟเวอร์เรียบร้อยแล้ว อย่างไรก็ตาม หน้าตัวอย่าง จะแสดงข้อความล่าสุดเกี่ยวกับเวอร์ชันเซิร์ฟเวอร์การติดแท็ก