iOS+
Android
เว็บ
หน้านี้มีเคล็ดลับในการแก้ปัญหาเพื่อเริ่มต้นใช้งาน Performance Monitoring หรือใช้ฟีเจอร์และเครื่องมือของ Performance Monitoring
การตรวจสอบเบื้องต้นเพื่อแก้ปัญหา
การตรวจสอบ 2 อย่างต่อไปนี้เป็นแนวทางปฏิบัติแนะนำทั่วไปสำหรับทุกคน
ก่อนที่จะแก้ปัญหาเพิ่มเติม
1. ตรวจสอบข้อความบันทึกสำหรับเหตุการณ์ด้านประสิทธิภาพ
ตรวจสอบข้อความบันทึกเพื่อให้แน่ใจว่า Performance Monitoring SDK บันทึก
เหตุการณ์ประสิทธิภาพ
2. ตรวจสอบแดชบอร์ดสถานะ Firebase
ตรวจสอบแดชบอร์ดสถานะ Firebase ในกรณีที่ Firebase หรือ Performance Monitoring หยุดให้บริการโดยปัญหาเป็นที่รับทราบแล้ว
เริ่มต้นใช้งาน Performance Monitoring
หากคุณเพิ่งเริ่มต้นใช้งาน Performance Monitoring
(iOS+ |
Android |
Web ) เคล็ดลับในการแก้ปัญหาต่อไปนี้
จะช่วยแก้ไขปัญหาที่เกี่ยวข้องกับ Firebase ในการตรวจหา SDK หรือแสดง
ข้อมูลประสิทธิภาพแรกในคอนโซล Firebase
เพิ่ม SDK ลงในแอปแล้ว แต่คอนโซล
ยังคงแจ้งให้เพิ่ม SDK
Firebase สามารถตรวจหาได้ว่าคุณเพิ่ม Performance Monitoring SDK ลงในแอปเรียบร้อยแล้วหรือไม่
เมื่อได้รับข้อมูลเหตุการณ์ (เช่น การโต้ตอบในแอป) จากแอป
โดยปกติแล้วภายใน 10 นาทีหลังจากเริ่มแอป แดชบอร์ดประสิทธิภาพ
ของคอนโซล Firebase จะแสดงข้อความ "ตรวจพบ SDK" จากนั้นภายใน 30 นาที แดชบอร์ดจะแสดงข้อมูลเริ่มต้นที่ประมวลผลแล้ว
หากผ่านไปนานกว่า 10 นาทีแล้วนับตั้งแต่ที่คุณเพิ่ม SDK เวอร์ชันล่าสุดลงในแอป แต่ยังไม่เห็นการเปลี่ยนแปลงใดๆ ให้ตรวจสอบข้อความบันทึก เพื่อให้แน่ใจว่า Performance Monitoring บันทึกเหตุการณ์
ลองทำตามขั้นตอนการแก้ปัญหาที่เหมาะสมตามที่อธิบายไว้ด้านล่างเพื่อ
แก้ปัญหาข้อความตรวจหา SDK ที่ล่าช้า
แอปบันทึกเหตุการณ์: ขั้นตอนการแก้ปัญหา
หมายเหตุ: SDK ของ Performance Monitoring จะจัดกลุ่มเหตุการณ์ในเครื่อง แล้วส่งไปยัง Firebase
เป็นระยะๆ ซึ่งหมายความว่ามีความล่าช้าระหว่างการโต้ตอบระหว่างแอปและเมื่อ Firebase ได้รับข้อมูลเหตุการณ์จากแอปของคุณ
หากคุณยังคงพัฒนาในพื้นที่ ให้ลองสร้างกิจกรรมเพิ่มเติมสำหรับการรวบรวมข้อมูล:
ให้บริการและดูแอปเว็บของคุณในสภาพแวดล้อมท้องถิ่น
สร้างกิจกรรมโดยการโหลดหน้าย่อยสำหรับไซต์ของคุณ โต้ตอบกับแอปของคุณ และ/หรือทริกเกอร์คำขอเครือข่าย ตรวจสอบให้แน่ใจว่าคุณเปิดแท็บเบราว์เซอร์ค้างไว้ประมาณ 10 วินาทีหลังจากโหลดหน้าเสร็จ
ตรวจสอบว่าได้เพิ่มออบเจ็กต์การกำหนดค่า Firebase ลงในแอปอย่างถูกต้อง และคุณไม่ได้แก้ไขออบเจ็กต์ โดยเฉพาะอย่างยิ่ง ให้ตรวจสอบสิ่งต่อไปนี้:
ID แอปเว็บ Firebase (appId ) ในวัตถุ config ถูกต้องสำหรับแอปของคุณ ค้นหา Firebase App ID ของคุณในแอปของคุณ บัตรของคุณsettings การตั้งค่าโครงการ -
หากดูเหมือนว่าจะมีสิ่งใดผิดปกติกับวัตถุ config ในแอปของคุณ ลองทำดังต่อไปนี้:
ลบออบเจ็กต์การกำหนดค่าที่คุณมีอยู่ในแอป
ทำตามวิธีการเหล่านี้ เพื่อรับออบเจ็กต์การกำหนดค่าใหม่และเพิ่มลงในเว็บแอป
หาก SDK กำลังบันทึกเหตุการณ์และดูเหมือนว่าทุกอย่างได้รับการตั้งค่าอย่างถูกต้อง แต่คุณยังคงไม่เห็นข้อความการตรวจจับ SDK หรือข้อมูลที่ประมวลผล (หลังจาก 2 ชั่วโมง) โปรดติดต่อฝ่ายสนับสนุน Firebase
แอปไม่ได้ บันทึกเหตุการณ์
ขั้นตอนการแก้ปัญหา
ตรวจสอบว่าได้Performance Monitoring เริ่มต้นใช้งาน SDK อย่างถูกต้องในแอป
ตรวจสอบว่าไม่ได้ปิดใช้ Performance Monitoring SDK ผ่านแฟล็กต่อไปนี้
performance.instrumentationEnabled
ตรวจสอบว่าได้ปิดใช้การแคชของเบราว์เซอร์แล้ว มิฉะนั้นเบราว์เซอร์
อาจไม่รับการตั้งค่าการวัดผลใหม่
ปิด แล้วเปิดแท็บหน้าเว็บอีกครั้ง ตรวจสอบการบันทึกอีกครั้ง
หากเพิ่งเพิ่ม Performance Monitoring SDK ในแอป คุณอาจต้องรีสตาร์ทแอปอย่างสมบูรณ์เพื่อให้ SDK เริ่มทำงาน
หากไม่พบฟีเจอร์ที่ถูกปิดใช้ในแอป โปรดติดต่อทีมสนับสนุนของ Firebase
คอนโซลระบุว่าตรวจพบ SDK แต่ไม่มีข้อมูลแสดง
Performance Monitoring ประมวลผลข้อมูลเหตุการณ์ด้านประสิทธิภาพก่อนที่จะแสดงในแดชบอร์ดประสิทธิภาพ
หากผ่านไปนานกว่า 24 ชั่วโมงนับตั้งแต่ข้อความ "ตรวจพบ SDK" ปรากฏขึ้น
และคุณยังไม่เห็นข้อมูล ให้ตรวจสอบแดชบอร์ดสถานะของ Firebase ในกรณีที่
เกิดการหยุดทำงานที่ทราบสาเหตุ หากไม่มีการหยุดทำงาน โปรดติดต่อทีมสนับสนุน Firebase
การแก้ปัญหาทั่วไป
หากเพิ่ม SDK เรียบร้อยแล้วและใช้ Performance Monitoring ในแอป เคล็ดลับการแก้ปัญหาต่อไปนี้จะช่วยแก้ปัญหาทั่วไปที่เกี่ยวข้องกับฟีเจอร์และเครื่องมือของ Performance Monitoring ได้
แอปไม่ได้บันทึกเหตุการณ์ด้านประสิทธิภาพ
หากไม่เห็นข้อความบันทึกสำหรับเหตุการณ์
ประสิทธิภาพ ให้ลองทำตามขั้นตอนการแก้ปัญหาต่อไปนี้
ตรวจสอบว่าได้Performance Monitoring เริ่มต้นใช้งาน SDK อย่างถูกต้องในแอป
ตรวจสอบว่าไม่ได้ปิดใช้ Performance Monitoring SDK ผ่านแฟล็กต่อไปนี้
performance.instrumentationEnabled
ตรวจสอบว่าได้ปิดใช้การแคชของเบราว์เซอร์แล้ว มิฉะนั้นเบราว์เซอร์
อาจไม่รับการตั้งค่าการวัดผลใหม่
ปิด แล้วเปิดแท็บหน้าเว็บอีกครั้ง ตรวจสอบการบันทึกอีกครั้ง
หากเพิ่งเพิ่ม Performance Monitoring SDK ในแอป คุณอาจต้องรีสตาร์ทแอปอย่างสมบูรณ์เพื่อให้ SDK เริ่มทำงาน
หากไม่พบฟีเจอร์ที่ถูกปิดใช้ในแอป โปรดติดต่อทีมสนับสนุนของ Firebase
แผงควบคุมประสิทธิภาพขาดข้อมูลการติดตามที่กำหนดเอง
คุณกำลังเห็นข้อมูลประสิทธิภาพสำหรับการติดตามที่รวบรวมโดยอัตโนมัติหรือไม่ แต่ไม่เห็นสำหรับการติดตามโค้ดที่กำหนดเอง ลองทำตามขั้นตอนการแก้ไขปัญหาต่อไปนี้:
ตรวจสอบการตั้งค่าการติดตามโค้ดที่กำหนดเองซึ่งสร้างขึ้นผ่าน Trace API
โดยเฉพาะอย่างยิ่งรายการต่อไปนี้
ชื่อสำหรับการติดตามโค้ดที่กำหนดเองและเมตริกที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้
ไม่มีช่องว่างนำหน้าหรือต่อท้าย ไม่มีขีดล่างนำหน้า
(_) และความยาวสูงสุดคือ 32 อักขระ
ทุกร่องรอยจะต้องเริ่มและหยุด ระบบจะไม่บันทึกร่องรอยที่ไม่ได้เริ่มต้น ไม่ได้
หยุด หรือหยุดก่อนเริ่มต้น
โปรดทราบว่าหากคุณใช้เมธอด
record()
คุณก็ไม่จำเป็นต้องเริ่มหรือหยุดการติดตามอย่างชัดเจน
ตรวจสอบให้แน่ใจว่าการรวบรวมข้อมูล Performance Monitoring ไม่ ถูกปิดใช้งาน โดยใช้แฟล็กต่อไปนี้:
ตรวจสอบข้อความบันทึกของคุณ เพื่อให้แน่ใจว่า Performance Monitoring กำลังบันทึกการติดตามโค้ดที่กำหนดเองตามที่คาดไว้
หาก Performance Monitoring บันทึกเหตุการณ์ แต่ไม่มีข้อมูลแสดงหลังจากผ่านไป 24 ชั่วโมง
โปรดติดต่อทีมสนับสนุน Firebase
แดชบอร์ดประสิทธิภาพ
ไม่มีข้อมูลคำขอเครือข่าย
หากคุณขาดข้อมูลการร้องขอเครือข่าย โปรดทราบสิ่งต่อไปนี้:
Performance Monitoring รวบรวมเมตริกสำหรับคำขอเครือข่ายที่รายงานโดย API ของเบราว์เซอร์โดยอัตโนมัติ รายงานเหล่านี้ไม่รวมคำขอเครือข่ายที่ล้มเหลว
Performance Monitoring อาจรายงานเฉพาะคำขอเครือข่ายที่เสร็จสมบูรณ์แล้ว ทั้งนี้ขึ้นอยู่กับลักษณะการทำงานของโค้ดและไลบรารีเครือข่ายที่โค้ดของคุณใช้
ซึ่งหมายความว่าการเชื่อมต่อ HTTP/S ที่ถูกปล่อยทิ้งไว้อาจไม่ได้รับการรายงาน
คำถามที่พบบ่อย
ไอโอเอส+
แอนดรอยด์
เว็บไซต์
เกิดอะไรขึ้นกับปัญหาหลักในการ์ดประสิทธิภาพบนหน้าแรกของโปรเจกต์?
เราได้แทนที่ปัญหาที่พบบ่อย ด้วยการแจ้งเตือนล่าสุด เพื่อติดตามผลการ
เปิดตัวการแจ้งเตือนเมื่อเร็วๆ นี้ ซึ่งจะแจ้งให้คุณทราบโดยอัตโนมัติเมื่อ
มีการละเมิดเกณฑ์ที่คุณตั้งไว้ ปัญหาต่างๆ จะไม่ได้รับการแก้ไขอีกต่อไปแล้ว และจะถูกแทนที่ด้วยการแจ้งเตือน
ตัวเลือกแอปที่ด้านบนของการ์ดประสิทธิภาพจะกรองรายการการแจ้งเตือนภายใต้การแจ้งเตือนล่าสุด จะแสดงเฉพาะการแจ้งเตือนสามรายการล่าสุดสำหรับแอปที่เลือกเท่านั้น
ดูข้อมูลเพิ่มเติมเกี่ยวกับการแจ้งเตือนได้ที่ตั้งค่าการแจ้งเตือนสำหรับปัญหาด้านประสิทธิภาพ
เกิดอะไรขึ้นกับความสามารถในการกำหนดเกณฑ์สำหรับปัญหาในคอนโซล?
Performance Monitoring รองรับการแจ้งเตือน สำหรับเมตริกที่เกินเกณฑ์ที่กำหนด เราได้นำความสามารถในการกำหนดค่าเกณฑ์สำหรับปัญหา ออกเพื่อไม่ให้เกิดความสับสนกับเกณฑ์ที่กำหนดค่าได้เหล่านี้สำหรับ
เมตริกประสิทธิภาพ
เกิดอะไรขึ้นกับข้อมูลรายละเอียดและเมตริกในคอนโซล Firebase
เราได้แทนที่หน้ารายละเอียดและเมตริกด้วยอินเทอร์เฟซผู้ใช้ (UI) แบบรวมศูนย์ที่ได้รับการออกแบบใหม่เพื่อปรับปรุงวิธีแก้ไขปัญหาของคุณ UI การแก้ไขปัญหาใหม่นี้มีฟังก์ชันหลักแบบเดียวกับที่รายละเอียดและเมตริกมี ดูข้อมูลเพิ่มเติมเกี่ยวกับการแก้ปัญหาได้ที่ดูข้อมูลเพิ่มเติมสำหรับการติดตามที่เฉพาะเจาะจง
เหตุใดจำนวนตัวอย่างจึงไม่เป็นไปตามที่คาดไว้
Performance Monitoring รวบรวมข้อมูลประสิทธิภาพจากอุปกรณ์ผู้ใช้แอปของคุณ หากแอปพลิเคชันมีผู้ใช้จำนวนมากหรือหากแอปสร้างกิจกรรมด้านประสิทธิภาพจำนวนมาก Performance Monitoring อาจจำกัดการเก็บรวบรวมข้อมูลไว้ในอุปกรณ์บางส่วนเพื่อลดจำนวนเหตุการณ์ที่ประมวลผล ขีดจำกัดเหล่านี้สูงเพียงพอที่แม้จะมีเหตุการณ์น้อยลง แต่ค่าเมตริกยังคงแสดงถึงประสบการณ์แอปของผู้ใช้ของคุณ
เพื่อจัดการปริมาณข้อมูลที่เรารวบรวม Performance Monitoring ใช้ตัวเลือกการสุ่มตัวอย่างดังต่อไปนี้:
การจํากัดอัตราในอุปกรณ์ : เพื่อป้องกันไม่ให้อุปกรณ์ส่งร่องรอย
อย่างรวดเร็ว เราจํากัดจํานวนร่องรอยของโค้ดและคําขอเครือข่ายที่ส่งจาก
อุปกรณ์เป็น 300 เหตุการณ์ทุกๆ 10 นาที แนวทางนี้จะช่วยปกป้องอุปกรณ์จากเครื่องมือวัดแบบวนซ้ำที่สามารถส่งข้อมูลประสิทธิภาพจำนวนมากได้ และยังป้องกันไม่ให้อุปกรณ์เพียงเครื่องเดียวทำให้การวัดประสิทธิภาพเบี่ยงเบนไป
การสุ่มตัวอย่างแบบไดนามิก : Performance Monitoring รวบรวมการติดตามโค้ดและการติดตามคำขอเครือข่ายจำนวนจำกัดต่อแอปในแต่ละวันสำหรับผู้ใช้งานแอปทั้งหมด ระบบจะดึงข้อมูลอัตราการสุ่มตัวอย่างแบบไดนามิกในอุปกรณ์ (โดยใช้ Firebase Remote Config ) เพื่อพิจารณาว่าอุปกรณ์แบบสุ่มควรบันทึกและส่งการติดตามหรือไม่ อุปกรณ์ที่ไม่ได้
เลือกสำหรับการสุ่มตัวอย่างจะไม่ส่งเหตุการณ์ใดๆ อัตราการสุ่มตัวอย่างแบบไดนามิกนั้นเฉพาะตามแอปและจะปรับเพื่อให้แน่ใจว่าปริมาณข้อมูลทั้งหมดที่รวบรวมไว้ยังคงต่ำกว่าขีดจำกัด
เซสชันผู้ใช้จะส่งข้อมูลรายละเอียดเพิ่มเติมจากอุปกรณ์ของผู้ใช้ ซึ่งต้องใช้ทรัพยากรเพิ่มเติมในการรวบรวมและส่งข้อมูล เพื่อลดผลกระทบของเซสชันผู้ใช้ Performance Monitoring อาจจำกัดจำนวนเซสชันด้วย
การจำกัดอัตราฝั่งเซิร์ฟเวอร์: เพื่อให้แน่ใจว่าแอปจะไม่เกินขีดจำกัดการสุ่มตัวอย่าง Performance Monitoring อาจใช้การสุ่มตัวอย่างฝั่งเซิร์ฟเวอร์เพื่อลบเหตุการณ์บางอย่างที่ได้รับจากอุปกรณ์ แม้ว่าการจำกัดประเภทนี้จะไม่เปลี่ยนประสิทธิภาพของเมตริกของเรา แต่ก็อาจทำให้เกิดการเปลี่ยนแปลงรูปแบบเล็กน้อยได้ ซึ่งรวมถึงต่อไปนี้:
จำนวนการติดตามอาจแตกต่างจากจำนวนครั้งที่มีการเรียกใช้โค้ด
การติดตามที่เชื่อมโยงกันอย่างใกล้ชิดในโค้ดอาจมีจำนวนตัวอย่างแตกต่างกัน
หมายเหตุ: ขีดจำกัดการสุ่มตัวอย่างที่เฉพาะเจาะจงและการนำไปใช้อาจเปลี่ยนแปลงได้เมื่อ Performance Monitoring
มีการพัฒนา
เกิดอะไรขึ้นกับแท็บปัญหา ในคอนโซล
เราได้แทนที่แท็บปัญหาด้วยการเปิดตัวการแจ้งเตือน ซึ่งจะ
แจ้งให้คุณทราบโดยอัตโนมัติเมื่อมีการเกินเกณฑ์ที่คุณตั้งไว้ คุณไม่จำเป็นต้องตรวจสอบFirebase คอนโซลด้วยตนเองเพื่อดูสถานะของ
เกณฑ์การชำระเงินอีกต่อไป หากต้องการเรียนรู้เกี่ยวกับการแจ้งเตือน โปรดดูที่ตั้งค่าการแจ้งเตือนสำหรับปัญหาประสิทธิภาพการทำงาน
เกิดอะไรขึ้นกับแท็บในอุปกรณ์ และเครือข่าย ในคอนโซล
ฉันจะดูการติดตามที่อยู่ในหน้าเหล่านั้นได้อย่างไร
เราได้ออกแบบส่วน Performance Monitoring ของคอนโซล Firebase ใหม่เพื่อให้แท็บแดชบอร์ด แสดงเมตริกหลักและการติดตามทั้งหมดของคุณในที่เดียว เราได้นำหน้าในอุปกรณ์ และเครือข่าย ออกจากการออกแบบใหม่
ตารางการติดตามที่ด้านล่างของแท็บแดชบอร์ด มีข้อมูลทั้งหมดเหมือนกับที่แท็บในอุปกรณ์ และเครือข่าย แสดง แต่มีฟีเจอร์เพิ่มเติมบางอย่าง รวมถึงความสามารถในการจัดเรียงการติดตามตามการเปลี่ยนแปลงเปอร์เซ็นต์สำหรับเมตริกที่เฉพาะเจาะจง หากต้องการดูเมตริกและข้อมูลทั้งหมด ของร่องรอยที่เฉพาะเจาะจง ให้คลิกชื่อร่องรอยในตารางร่องรอย
ดูการติดตามในแท็บย่อยต่อไปนี้ของตารางการติดตาม
การติดตามคำขอเครือข่าย (ทั้งแบบสำเร็จรูปและแบบกำหนดเอง) - แท็บย่อยคำขอเครือข่าย
การติดตามโค้ดที่กำหนดเอง - แท็บย่อยการติดตามที่กำหนดเอง
การติดตามการเริ่มต้นแอป แอปที่ทำงานอยู่เบื้องหน้า และแอปที่ทำงานอยู่เบื้องหลัง — แท็บย่อยการติดตามที่กำหนดเอง
การติดตามการแสดงผลของหน้าจอ - แท็บย่อยการแสดงผลของหน้าจอ
การติดตามการโหลดหน้าเว็บ - แท็บย่อยการโหลดหน้าเว็บ
ดูรายละเอียดเกี่ยวกับตารางการติดตาม รวมถึงเมตริกและข้อมูลได้ที่
หน้าภาพรวมของคอนโซล
(iOS+ |
Android |
เว็บ )
เหตุใดจำนวนเฟรมที่ช้าและหยุดนิ่งจึงไม่เป็นไปตามที่ฉันคาดไว้
ระบบจะคำนวณเฟรมที่แสดงผลช้าและเฟรมที่ค้างโดยใช้อัตราการรีเฟรชของอุปกรณ์ที่สมมติไว้ที่ 60Hz หากอัตราการรีเฟรชของอุปกรณ์ต่ำกว่า 60Hz แต่ละเฟรม
จะมีเวลาในการแสดงผลช้าลงเนื่องจากมีการแสดงผลเฟรมน้อยลงต่อวินาที
เวลาในการแสดงผลที่ช้าลงอาจทำให้มีการรายงานเฟรมที่ช้าหรือหยุดนิ่งมากขึ้น
เนื่องจากเฟรมจำนวนมากขึ้นจะแสดงผลช้าลงหรือหยุดนิ่ง อย่างไรก็ตาม หากอัตราการรีเฟรชของอุปกรณ์สูงกว่า 60Hz แต่ละเฟรมจะมีเวลาในการแสดงผลที่เร็วขึ้น
ซึ่งอาจทำให้มีการรายงานเฟรมที่ช้าหรือหยุดนิ่งน้อยลง นี่คือข้อจำกัดปัจจุบันใน Performance Monitoring SDK
ฉันจะเพิ่ม Performance Monitoring JS SDK (SDK แบบ "สแตนด์อโลน") ที่มีขนาดเล็กลงและมีเนมสเปซ
ลงในเว็บแอปได้อย่างไร
หาก Performance Monitoring เป็นผลิตภัณฑ์ Firebase เพียงอย่างเดียวในแอป คุณสามารถใช้ SDK ของ Performance Monitoring แบบสแตนด์อโลน (และสคริปต์ส่วนหัวที่แนะนําด้านล่าง) ได้หากสนใจสิ่งต่อไปนี้
การใช้ไลบรารีที่มีเนมสเปซ
การลดขนาดแพ็กเกจ SDK
การหน่วงเวลาการเริ่มต้น SDK จนกว่าหน้าเว็บจะโหลดเสร็จ
หากต้องการรวม Performance Monitoring SDK แบบสแตนด์อโลนไว้ในแอปและเลื่อนการเริ่มต้น
ไปเป็นหลังจากที่หน้าเว็บโหลดแล้ว ให้ทำดังนี้
เพิ่มสคริปต์ต่อไปนี้ลงในส่วนหัวของไฟล์ดัชนี
อย่าลืมเพิ่ม
ออบเจ็กต์การกำหนดค่าโปรเจ็กต์ Firebase ของแอป
( function ( sa , fbc ){ function load ( f , c ){ var a = document . createElement ( 'script' );
a . async = 1 ; a . src = f ; var s = document . getElementsByTagName ( 'script' )[ 0 ];
s . parentNode . insertBefore ( a , s );} load ( sa );
window . addEventListener ( 'load' , function (){ firebase . initializeApp ( fbc ) . performance ()});
})( performance_standalone , firebaseConfig );
ที่
performance_standalone คือ
'https://www.gstatic.com/firebasejs/12.6.0/firebase-performance.js'
firebaseConfig คือออบเจ็กต์การกำหนดค่า Firebase ของแอป
สคริปต์ข้างต้นจะโหลด SDK แบบสแตนด์อโลนแบบไม่พร้อมกัน จากนั้นจะเริ่มต้น Firebase หลังจาก เหตุการณ์ onload ของหน้าต่างทริกเกอร์ กลยุทธ์นี้จะช่วยลดผลกระทบที่ SDK อาจมีต่อเมตริกการโหลดหน้าเว็บ เนื่องจากเบราว์เซอร์ได้รายงานเมตริกการโหลดแล้วเมื่อคุณเริ่มต้น SDK
หมายเหตุ: เมื่อใช้ Performance Monitoring SDK แบบสแตนด์อโลน คุณไม่จำเป็นต้องรวม
Firebase Core SDK อย่างชัดเจน เนื่องจาก SDK แบบสแตนด์อโลนมี Firebase Core SDK ที่มีน้ำหนักเบากว่าอยู่แล้ว
ดูข้อมูลเกี่ยวกับ Performance Monitoring SDK แบบสแตนด์อโลนและสคริปต์ส่วนหัว
SDK แบบสแตนด์อโลนนี้ได้รับการเพิ่มประสิทธิภาพด้านขนาด โดยมีขนาดประมาณ 10 KB เมื่อบีบอัดด้วย Gzip โดยมีฟังก์ชันการทำงานทั้งหมดของ Firebase Performance Monitoring รวมถึงฟังก์ชันการทำงานหลักของ Firebase Core SDK ด้วย
Firebase Performance Monitoring ใช้ API ของ fetch และ Promise
ซึ่งไม่พร้อมใช้งานในเบราว์เซอร์รุ่นเก่า Polyfill สำหรับ API เหล่านี้รวมอยู่ใน Firebase Performance Monitoring JS SDK มาตรฐาน แต่จะไม่มีใน SDK แบบสแตนด์อโลนเพื่อลดขนาด
Performance Monitoring SDK บางส่วนอาศัย
Resource Timing API
เพื่อรับเมตริกการโหลดหน้าเว็บจากเบราว์เซอร์
ข้อมูลโค้ดต่อไปนี้จะแบ่งสคริปต์ส่วนหัวซึ่งรวมถึงการเริ่มต้น SDK ที่ล่าช้า
( function ( sdkSource , firebaseConfigObject ) {
function load ( f , c ) {
// Creates a script tag to load the standalone SDK
var sdkScript = document . createElement ( 'script' );
// Sets it to an async script so that it doesn 't interfere with page load
sdkScript . async = 1 ;
// Sets the source of the script
sdkScript . src = f ;
// Inserts the script into the head of the page
var s = document . getElementsByTagName ( 'script' )[ 0 ];
s . parentNode . insertBefore ( sdkScript , s );
}
// Calls the load method
load ( sdkSource );
// Initializes the SDK only when the onload method is called
window . addEventListener ( 'load' , function () {
firebase . initializeApp ( firebaseConfigObject ) . performance ();
});
})( performance_standalone , firebaseConfig );
ที่
performance_standalone คือ 'https://www.gstatic.com/firebasejs/12.6.0/firebase-performance-standalone.js'
firebaseConfig คือออบเจ็กต์การกำหนดค่า Firebase ของแอป
การประมวลผลและการแสดงข้อมูลแบบแทบจะเรียลไทม์
ข้อมูลประสิทธิภาพ "แบบเกือบเรียลไทม์" หมายถึงอะไร
Firebase Performance Monitoring ประมวลผลข้อมูลประสิทธิภาพที่รวบรวมเมื่อได้รับ ซึ่ง
ส่งผลให้ข้อมูลแสดงแบบเกือบเรียลไทม์ในคอนโซล Firebase ข้อมูลที่ประมวลผลแล้วจะแสดงในคอนโซลภายในไม่กี่นาทีหลังจากที่รวบรวม จึงเป็นที่มาของคำว่า "แทบจะเรียลไทม์"
หากต้องการใช้ประโยชน์จากการประมวลผลข้อมูลแบบเกือบเรียลไทม์ โปรดตรวจสอบว่าแอปใช้ SDK เวอร์ชันที่เข้ากันได้กับเรียลไทม์
ฉันจะดูข้อมูลประสิทธิภาพของแอปแบบเรียลไทม์ได้ที่ไหน
หากต้องการใช้ประโยชน์จากการประมวลผลข้อมูลแบบเกือบเรียลไทม์ คุณเพียงต้องตรวจสอบ
ว่าแอปใช้ SDK เวอร์ชัน Performance Monitoring ที่เข้ากันได้กับการประมวลผลข้อมูลแบบเรียลไทม์
SDK เวอร์ชันที่ใช้งานร่วมกันได้แบบเรียลไทม์มีดังนี้
iOS - v7.3.0 ขึ้นไป
tvOS — v8.9.0 ขึ้นไป
Android - v19.0.10 ขึ้นไป (หรือ Firebase Android BoM v26.1.0 ขึ้นไป)
เว็บ - v7.14.0 ขึ้นไป
โปรดทราบว่าเราขอแนะนำให้ใช้ SDK เวอร์ชันล่าสุดเสมอ แต่ SDK เวอร์ชันใดก็ตามที่ระบุไว้ข้างต้นจะช่วยให้ Performance Monitoring ประมวลผลข้อมูลของคุณได้แบบเกือบเรียลไทม์
Performance Monitoring SDK เวอร์ชันใดที่ถือว่าใช้งานร่วมกันได้แบบเรียลไทม์
SDK เวอร์ชันที่เข้ากันได้กับการประมวลผลข้อมูลแบบเรียลไทม์มีดังนี้
iOS - v7.3.0 ขึ้นไป
tvOS — v8.9.0 ขึ้นไป
Android - v19.0.10 ขึ้นไป (หรือ Firebase Android BoM v26.1.0 ขึ้นไป)
เว็บ - v7.14.0 ขึ้นไป
โปรดทราบว่าเราขอแนะนำให้ใช้ SDK เวอร์ชันล่าสุดเสมอ แต่ SDK เวอร์ชันใดก็ตามที่ระบุไว้ข้างต้นจะช่วยให้ Performance Monitoring ประมวลผลข้อมูลของคุณได้แบบเกือบเรียลไทม์
จะเกิดอะไรขึ้นหากฉันไม่อัปเดตแอปให้ใช้ SDK เวอร์ชันที่ใช้งานร่วมกันได้แบบเรียลไทม์
หากแอปไม่ได้ใช้ SDK เวอร์ชันที่เข้ากันได้แบบเรียลไทม์ คุณจะยังเห็น
ข้อมูลประสิทธิภาพทั้งหมดของแอปในFirebase คอนโซล อย่างไรก็ตาม การแสดงข้อมูลประสิทธิภาพจะล่าช้าประมาณ 36 ชั่วโมงนับจากเวลาที่รวบรวมข้อมูล
ฉันอัปเดตเป็น SDK เวอร์ชันที่เข้ากันได้แบบเรียลไทม์แล้ว แต่ผู้ใช้บางรายยังคงใช้แอปเวอร์ชันเก่าอยู่ ฉันจะยังเห็นข้อมูลประสิทธิภาพของผู้ใช้เหล่านั้นในคอนโซล Firebase ไหม
แน่นอน ไม่ว่าอินสแตนซ์ของแอปจะใช้ SDK เวอร์ชันใด คุณจะเห็น
ข้อมูลประสิทธิภาพจากผู้ใช้ทั้งหมด
อย่างไรก็ตาม หากคุณดูข้อมูลล่าสุด (เก่าไม่เกินประมาณ 36 ชั่วโมง)
ข้อมูลที่แสดงจะเป็นข้อมูลจากผู้ใช้ของอินสแตนซ์แอปที่ใช้ SDK เวอร์ชันที่เข้ากันได้กับเรียลไทม์
แต่ข้อมูลที่ไม่ใช่ข้อมูลล่าสุด จะรวมข้อมูลประสิทธิภาพ
จากแอปทุกเวอร์ชัน
หากคุณติดต่อทีมสนับสนุนของ Firebase
โปรดระบุรหัสแอป Firebase เสมอ ค้นหารหัสแอป Firebase ในการ์ดแอปของคุณ ของsettings การตั้งค่าโปรเจ็กต์