iOS+
Android
เว็บ
หน้านี้มีเคล็ดลับการแก้ปัญหาเกี่ยวกับการเริ่มต้นใช้งาน Performance Monitoring หรือการใช้ฟีเจอร์และเครื่องมือของ Performance Monitoring
การตรวจสอบเพื่อแก้ปัญหาเบื้องต้น
การตรวจสอบ 2 รายการต่อไปนี้เป็นแนวทางปฏิบัติแนะนำทั่วไปที่แนะนำให้ทุกคนทำก่อนแก้ปัญหาเพิ่มเติม
1. ตรวจสอบข้อความบันทึกเพื่อหาเหตุการณ์ด้านประสิทธิภาพ
ตรวจสอบข้อความบันทึกเพื่อให้แน่ใจว่า Performance Monitoring SDK กําลังบันทึกเหตุการณ์ประสิทธิภาพ
2. ตรวจสอบแดชบอร์ดสถานะ Firebase
ตรวจสอบหน้าแดชบอร์ดสถานะ Firebase ในกรณีที่ทราบว่า Firebase หรือ Performance Monitoring หยุดให้บริการ
การเริ่มต้นใช้งาน Performance Monitoring
หากคุณเพิ่งเริ่มต้นใช้งาน Performance Monitoring (iOS+ | Android | เว็บ ) เคล็ดลับการแก้ปัญหาต่อไปนี้จะช่วยแก้ปัญหาที่เกี่ยวข้องกับ Firebase ที่ตรวจหา SDK หรือแสดงข้อมูลประสิทธิภาพครั้งแรกในคอนโซล Firebase
เพิ่ม SDK ลงในแอปแล้ว แต่คอนโซลยังคงบอกให้เพิ่ม SDK
Firebase จะตรวจจับได้ว่าคุณเพิ่ม Performance Monitoring SDK ลงในแอปเรียบร้อยแล้วหรือไม่เมื่อได้รับข้อมูลเหตุการณ์ (เช่น การโต้ตอบของแอป) จากแอปของคุณ โดยปกติแล้วภายใน 10 นาทีหลังจากเริ่มแอป แดชบอร์ดประสิทธิภาพ ของคอนโซล Firebase จะแสดงข้อความ "ตรวจพบ SDK" จากนั้นภายใน 30 นาที แดชบอร์ดจะแสดงข้อมูลที่ประมวลผลเบื้องต้น
หากผ่านไปนานกว่า 10 นาทีแล้วนับตั้งแต่ที่คุณเพิ่ม SDK เวอร์ชันล่าสุดลงในแอป แต่ยังไม่พบการเปลี่ยนแปลงใดๆ ให้ตรวจสอบข้อความบันทึก เพื่อให้แน่ใจว่า Performance Monitoring บันทึกเหตุการณ์อยู่ ลองทำตามขั้นตอนการแก้ปัญหาที่เหมาะสมตามที่อธิบายไว้ด้านล่างเพื่อแก้ปัญหาข้อความการตรวจหา SDK ที่ล่าช้า
แอปบันทึกเหตุการณ์: ขั้นตอนการแก้ปัญหา
หมายเหตุ: Performance Monitoring SDK จะจัดกลุ่มเหตุการณ์ไว้ในเครื่อง จากนั้นส่งไปยัง Firebase เป็นระยะ ซึ่งหมายความว่าการโต้ตอบกับแอปจะมีความล่าช้าเกิดขึ้นเมื่อ Firebase ได้รับข้อมูลเหตุการณ์จากแอป
หากคุณยังพัฒนาในเครื่องอยู่ ให้ลองสร้างเหตุการณ์เพิ่มเติมสําหรับการเก็บรวบรวมข้อมูล ดังนี้
แสดงและดูเว็บแอปในสภาพแวดล้อมในเครื่อง
สร้างเหตุการณ์โดยการโหลดหน้าย่อยสําหรับเว็บไซต์ การโต้ตอบกับแอป และ/หรือการเรียกคําขอเครือข่าย โปรดเปิดแท็บเบราว์เซอร์ไว้อย่างน้อย 10 วินาทีหลังจากโหลดหน้าเว็บ
ตรวจสอบว่าได้เพิ่มออบเจ็กต์การกําหนดค่า Firebase ลงในแอปอย่างถูกต้องและคุณไม่ได้แก้ไขออบเจ็กต์ โดยให้ตรวจสอบสิ่งต่อไปนี้
รหัสแอปเว็บ Firebase (appId
) ในออบเจ็กต์การกําหนดค่าถูกต้องสําหรับแอปของคุณ ค้นหารหัสแอป Firebase ในการ์ดแอปของคุณ ของsettings การตั้งค่า โปรเจ็กต์
หากมีข้อผิดพลาดเกี่ยวกับออบเจ็กต์การกําหนดค่าในแอป ให้ลองทําดังนี้
ลบออบเจ็กต์การกําหนดค่าที่คุณมีอยู่ในแอป
ทำตามวิธีการเหล่านี้ เพื่อรับออบเจ็กต์การกําหนดค่าใหม่และเพิ่มลงในเว็บแอป
หาก SDK บันทึกเหตุการณ์และดูเหมือนว่าทุกอย่างจะตั้งค่าอย่างถูกต้องแล้ว แต่คุณยังไม่เห็นข้อความการตรวจหา SDK หรือข้อมูลที่ประมวลผลแล้ว (หลังจากผ่านไป 2 ชั่วโมง) โปรดติดต่อทีมสนับสนุนของ Firebase
แอปไม่ บันทึกเหตุการณ์ ขั้นตอนแก้ปัญหา
ตรวจสอบว่า Performance Monitoring SDK เริ่มต้น อย่างถูกต้องในแอป
ตรวจสอบว่า Performance Monitoring SDK ไม่ได้ ปิดใช้ผ่านแฟล็กต่อไปนี้
performance.instrumentationEnabled
ตรวจสอบว่าแคชของเบราว์เซอร์ปิด อยู่ ไม่เช่นนั้นเบราว์เซอร์อาจไม่รับการตั้งค่าเครื่องมือวัดใหม่
ปิดแล้วเปิดแท็บหน้าเว็บอีกครั้ง ตรวจสอบการบันทึกอีกครั้ง
หากคุณเพิ่งเพิ่ม Performance Monitoring SDK ในแอป คุณอาจต้องรีบูตแอปโดยสมบูรณ์เพื่อให้ SDK เริ่มทํางาน
หากไม่พบรายการใดที่ปิดใช้ในแอป ให้ติดต่อทีมสนับสนุน 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 ไม่ได้ปิดใช้ การรวบรวมข้อมูล ผ่าน Flag ต่อไปนี้
ตรวจสอบข้อความบันทึก เพื่อให้แน่ใจว่า Performance Monitoring บันทึกการติดตามโค้ดที่กำหนดเองตามที่คาดไว้
หาก Performance Monitoring บันทึกเหตุการณ์ แต่ไม่มีข้อมูลแสดงหลังจากผ่านไป 24 ชั่วโมง ให้ติดต่อทีมสนับสนุน Firebase
แดชบอร์ดประสิทธิภาพไม่มีข้อมูลคําขอเครือข่าย
หากคุณไม่มีข้อมูลคําขอเครือข่าย โปรดคำนึงถึงสิ่งต่อไปนี้
Performance Monitoring จะรวบรวมเมตริกสําหรับคําขอเครือข่ายที่รายงานโดย API ของเบราว์เซอร์โดยอัตโนมัติ รายงานเหล่านี้ไม่รวมคำขอเครือข่ายที่ไม่สำเร็จ
Performance Monitoring อาจรายงานเฉพาะคำขอเครือข่ายที่เสร็จสมบูรณ์ ทั้งนี้ขึ้นอยู่กับลักษณะการทำงานของโค้ดและไลบรารีการทํางานของเครือข่ายที่โค้ดใช้
ซึ่งหมายความว่าระบบอาจไม่รายงานการเชื่อมต่อ HTTP/S ที่เปิดอยู่
คำถามที่พบบ่อย
iOS+
Android
เว็บ
เกิดอะไรขึ้นกับปัญหาสำคัญในการ์ดประสิทธิภาพในหน้าแรกของโปรเจ็กต์
เราได้เปลี่ยนปัญหายอดนิยม เป็นการแจ้งเตือนล่าสุด เพื่อติดตามการเปิดตัวการแจ้งเตือนเมื่อเร็วๆ นี้ ซึ่งจะแจ้งให้คุณทราบโดยอัตโนมัติเมื่อเกิดเหตุการณ์เกินเกณฑ์ที่คุณตั้งไว้ เราเลิกใช้งานปัญหาแล้ว และแทนที่ด้วยคำเตือน
เครื่องมือเลือกแอปที่ด้านบนของการ์ดประสิทธิภาพจะกรองรายการการแจ้งเตือนในส่วนการแจ้งเตือนล่าสุด ระบบจะแสดงเฉพาะการแจ้งเตือน 3 รายการล่าสุดสำหรับแอปที่เลือก
ดูข้อมูลเพิ่มเติมเกี่ยวกับการแจ้งเตือนได้ที่หัวข้อตั้งค่าการแจ้งเตือนสำหรับปัญหาด้านประสิทธิภาพ
ความสามารถในการตั้งเกณฑ์สำหรับปัญหาในคอนโซลหายไปไหน
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 เพียงรายการเดียวในแอป คุณจะใช้ Performance Monitoring SDK แบบสแตนด์อโลน (และสคริปต์ส่วนหัวที่แนะนําด้านล่าง) ได้หากสนใจสิ่งต่อไปนี้
การใช้ไลบรารีที่มีเนมสเปซ
การลดขนาดแพ็กเกจ 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/11.0.2/firebase-performance.js'
firebaseConfig คือออบเจ็กต์การกําหนดค่า Firebase ของแอป
สคริปต์ด้านบนจะโหลด SDK แบบสแตนด์อโลนแบบไม่พร้อมกัน จากนั้นจะเริ่มต้น Firebase หลังจาก เหตุการณ์ onload
ของหน้าต่างเริ่มทํางาน กลยุทธ์นี้ช่วยลดผลกระทบที่ SDK อาจมีต่อเมตริกการโหลดหน้าเว็บ เนื่องจากเบราว์เซอร์ได้รายงานเมตริกการโหลดแล้วเมื่อคุณเริ่มต้น SDK
หมายเหตุ: เมื่อใช้ Performance Monitoring SDK แบบสแตนด์อโลน คุณจะไม่รวม SDK หลักของ Firebase อย่างชัดเจน เนื่องจาก SDK แบบสแตนด์อโลนมี SDK หลักของ Firebase เวอร์ชันเบากว่าอยู่แล้ว
ดูข้อมูลเกี่ยวกับ Performance Monitoring SDK แบบสแตนด์อโลนและสคริปต์ส่วนหัว
SDK แบบสแตนด์อโลนนี้ได้รับการเพิ่มประสิทธิภาพด้านขนาด โดยจะมีขนาดประมาณ 10 KB เมื่อใช้การบีบอัดข้อมูลด้วย Gzip โดยจะมีฟังก์ชันการทำงานทั้งหมดของ Firebase Performance Monitoring พร้อมกับชุดฟังก์ชันการทํางานของ Firebase Core SDK เพียงชุดเล็กๆ ด้วย
Firebase Performance Monitoring ใช้ fetch
และ Promise
API ซึ่งไม่พร้อมใช้งานในเบราว์เซอร์รุ่นเก่า โพลีฟิลล์สําหรับ 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/11.0.2/firebase-performance-standalone.js'
firebaseConfig คือออบเจ็กต์การกําหนดค่า Firebase ของแอป
การประมวลผลและการแสดงข้อมูลแบบเกือบเรียลไทม์
ข้อมูลประสิทธิภาพแบบ "เกือบเรียลไทม์" หมายถึงอะไร
Firebase Performance Monitoring จะประมวลผลข้อมูลประสิทธิภาพที่รวบรวมได้ทันทีที่ได้รับ ซึ่งส่งผลให้ข้อมูลแสดงแบบเกือบเรียลไทม์ในคอนโซล Firebase ข้อมูลที่ประมวลผลแล้วจะแสดงในคอนโซลภายในไม่กี่นาทีหลังจากรวบรวมข้อมูล จึงเป็นที่มาของคำว่า "เกือบเรียลไทม์"
หากต้องการใช้ประโยชน์จากการประมวลผลข้อมูลแบบเกือบเรียลไทม์ โปรดตรวจสอบว่าแอปใช้ SDK เวอร์ชันที่เข้ากันได้แบบเรียลไทม์
ฉันจะดูข้อมูลประสิทธิภาพของแอปแบบใกล้เคียงกับเรียลไทม์ได้อย่างไร
หากต้องการใช้ประโยชน์จากการประมวลผลข้อมูลแบบเกือบเรียลไทม์ เพียงตรวจสอบว่าแอปของคุณใช้ 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 เวอร์ชันล่าสุดเสมอ แต่เวอร์ชันใดก็ได้ที่ระบุไว้ข้างต้นจะช่วยให้ 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 เวอร์ชันล่าสุดเสมอ แต่เวอร์ชันใดก็ได้ที่ระบุไว้ข้างต้นจะช่วยให้ Performance Monitoring ประมวลผลข้อมูลของคุณแบบเกือบเรียลไทม์
จะเกิดอะไรขึ้นหากฉันไม่อัปเดตแอปให้ใช้ SDK เวอร์ชันที่ใช้งานร่วมกันได้แบบเรียลไทม์
หากแอปไม่ได้ใช้ SDK เวอร์ชันที่เข้ากันได้แบบเรียลไทม์ คุณจะยังคงเห็นข้อมูลประสิทธิภาพทั้งหมดของแอปในคอนโซล Firebase อย่างไรก็ตาม การแสดงข้อมูลประสิทธิภาพจะล่าช้าประมาณ 36 ชั่วโมงนับจากเวลาที่รวบรวม
ฉันอัปเดตเป็น SDK เวอร์ชันที่ใช้งานร่วมกันได้แบบเรียลไทม์แล้ว แต่ผู้ใช้บางรายยังใช้แอปเวอร์ชันเก่าอยู่ ฉันจะยังดูข้อมูลประสิทธิภาพของผู้ใช้เหล่านั้นในคอนโซล Firebase ได้ไหม
แน่นอน คุณจะดูข้อมูลประสิทธิภาพจากผู้ใช้ทั้งหมดได้ ไม่ว่าอินสแตนซ์แอปจะใช้ SDK เวอร์ชันใดก็ตาม
อย่างไรก็ตาม หากคุณดูข้อมูลล่าสุด (มีอายุไม่ถึง 36 ชั่วโมง) ข้อมูลที่แสดงจะมาจากผู้ใช้อินสแตนซ์แอปที่ใช้ SDK เวอร์ชันที่เข้ากันได้แบบเรียลไทม์ อย่างไรก็ตาม ข้อมูลที่ไม่ใหม่ จะรวมข้อมูลประสิทธิภาพจากแอปทุกเวอร์ชัน
หากคุณติดต่อทีมสนับสนุนของ Firebase ให้ระบุรหัสแอป Firebase เสมอ ค้นหารหัสแอป Firebase ในการ์ดแอปของคุณ ของการตั้งค่า โปรเจ็กต์settings