หน้านี้จะอธิบายวิธีตรวจสอบการใช้งาน Cloud Firestore และตรวจหาปัญหาที่อาจเกิดขึ้นในแอป
แดชบอร์ดการใช้งาน
ใช้แดชบอร์ดการใช้งานในคอนโซล Google Cloud และ Firebase เพื่อดู เอกสารก็อ่าน เขียน และลบได้เมื่อเวลาผ่านไป
การควบคุมการเข้าถึง
แดชบอร์ดการใช้งานต้องมีสิทธิ์ Cloud IAM ของ monitoring.timeSeries.list
บทบาทเจ้าของโปรเจ็กต์ ผู้แก้ไข และผู้ดูจะให้สิทธิ์นี้ นอกจากนี้ คุณยังให้สิทธิ์นี้
ผ่านบทบาท Cloud Monitoring
หรือบทบาทที่กำหนดเอง
แดชบอร์ดการใช้งานฐานข้อมูล
หากต้องการดูเมตริกการใช้งานสำหรับฐานข้อมูล Cloud Firestore ให้เปิดการใช้งานของฐานข้อมูล ในคอนโซล Google Cloud
ในคอนโซล Google Cloud ให้ไปที่หน้าฐานข้อมูล
เลือกฐานข้อมูลที่จําเป็นจากรายการฐานข้อมูล
คลิกการใช้งานในเมนูการนำทาง
คลิกลิงก์ในข้อความที่ปรากฏในหน้าเว็บเพื่อดูการใช้งานฐานข้อมูล
แดชบอร์ดการใช้งานฐานข้อมูล Cloud Firestore ในคอนโซล Google Cloud"/>
แดชบอร์ดการใช้งานรวม
หากโปรเจ็กต์มีฐานข้อมูล Cloud Firestore หลายรายการ คุณจะดูได้ เมตริกการใช้งานรวมในคอนโซล Google Cloud หรือคอนโซล Firebase
คอนโซล Google Cloud
ในคอนโซล Google Cloud ให้ไปที่หน้าการใช้งานโปรเจ็กต์
ไปที่การใช้งานโปรเจ็กต์ Google Cloud
แดชบอร์ดการใช้งานโปรเจ็กต์จะแสดงการดำเนินการกับเอกสารตามช่วงเวลา ดังนี้
แดชบอร์ดการใช้งานโปรเจ็กต์ Cloud Firestore ในคอนโซล Google Cloud"/>
คอนโซล Firebase
ไปที่หน้าการใช้งาน Cloud Firestore (คอนโซล Firebase)
แดชบอร์ดการใช้งาน Cloud Firestore ในคอนโซล Firebase"/>
แดชบอร์ดการใช้งานและรายงานการเรียกเก็บเงิน
หน้าแดชบอร์ดการใช้งาน Cloud Firestore ในคอนโซล Firebase และ Cloud จะแสดงค่าประมาณของการใช้งาน ซึ่งช่วยให้คุณระบุการใช้งานที่พุ่งสูงขึ้นได้ อย่างไรก็ตาม หน้าแดชบอร์ดไม่ใช่มุมมองที่แน่นอนของการดำเนินการที่มีการเรียกเก็บเงิน การใช้งานที่เรียกเก็บเงินมีแนวโน้มจะสูงกว่า ในทุกกรณีที่มีความคลาดเคลื่อน รายงานการเรียกเก็บเงินจะใช้ มีความสำคัญเหนือแดชบอร์ดการใช้งาน
การดำเนินการที่ทำให้เกิดความคลาดเคลื่อนระหว่างแดชบอร์ดการใช้งานและการเรียกเก็บเงิน การใช้งานประกอบด้วย:
- การดำเนินการนำเข้าและส่งออก การอ่านและการเขียนที่ดำเนินการโดยการดำเนินการเหล่านี้จะไม่แสดงในแดชบอร์ดการใช้งาน
- การเขียนแบบยืนยันเท่านั้นโดยไม่มีการดำเนินการ การเขียนที่ยืนยันการมีอยู่หรือไม่มีอยู่ของเอกสารจะมีส่วนร่วมในการดำเนินการอ่านที่มีการเรียกเก็บเงิน แต่จะแสดงเป็น "UPDATE_NOOP" และ "DELETE_NOOP" ตามลำดับในหน้าแดชบอร์ดการใช้งานการเขียน
- การเขียนที่ไม่มีการดำเนินการ การดำเนินการที่ไม่ส่งผลให้ฐานข้อมูลมีการเปลี่ยนแปลง เช่น การอัปเดตที่ไม่ได้เปลี่ยนค่าในช่องหรือการเขียนไปยังเอกสารที่ถูกลบไปแล้ว อาจแสดงในแดชบอร์ดการใช้งานเป็น "UPDATE_NOOP" หรือ "DELETE_NOOP" แม้ว่าจะแสดงเป็น "NOOP" แต่การดำเนินการเหล่านี้จะยังคงส่งผลต่อการดำเนินการที่มีการเรียกเก็บเงิน
การเขียนแบบยุบ ในกรณีที่มีการเขียนหลายรายการในเอกสารเดียวกันอย่างรวดเร็ว แดชบอร์ดการใช้งานอาจยุบการเขียนหลายรายการไว้ด้วยกัน และ นับเป็นหนึ่งเดียว เมื่อเรียกเก็บเงินสำหรับการใช้งาน ระบบจะยังคงนับการเขียนแต่ละรายการแยกกัน
แดชบอร์ดการใช้งานยังยุบการเขียนสำหรับการแปลงช่อง เช่น การประทับเวลาของเซิร์ฟเวอร์ การเพิ่มจำนวนตัวเลข และการดำเนินการสหภาพอาร์เรย์ สำหรับการเปลี่ยนรูปแบบช่อง แดชบอร์ดการใช้งานอาจนับการดำเนินการหลายรายการเป็นการดำเนินการเดียว
- การค้นหาที่แสดงผลลัพธ์เป็น 0 ข้อความค้นหาที่ไม่มีผลลัพธ์ ค่าใช้จ่ายสำหรับการดำเนินการอ่าน 1 ครั้ง มีการเรียกเก็บเงินการใช้งานนี้ แต่ไม่ปรากฏ ในแดชบอร์ดการใช้งาน
- อ่านการดำเนินการจากการอ่านรายการดัชนี มีการเรียกเก็บเงินการใช้งานนี้ จะปรากฏในแดชบอร์ดการใช้งาน ตัวอย่างเช่น การเรียกเก็บเงินค่าการค้นหาการรวมสำหรับรายการดัชนีที่อ่านแล้ว แต่การใช้งานนี้ไม่ปรากฏในแดชบอร์ดการใช้งาน
แดชบอร์ดการใช้งานสำหรับการลบจะไม่บันทึกการดำเนินการหมดอายุอัตโนมัติที่ดำเนินการโดยนโยบาย Time-to-live (TTL) โปรดดูเมตริก TTL จาก Cloud Monitoring
การใช้กฎความปลอดภัย
นอกจากนี้ คอนโซล Firebase ยังมีการประเมินกฎความปลอดภัย แดชบอร์ด ซึ่งเป็นมุมมองที่มีประโยชน์โดยย่อของการเรียกใช้กฎ คุณสามารถเสริม แดชบอร์ดนี้พร้อมด้วยการวิเคราะห์โดยละเอียด Cloud Monitoring
กฎ Cloud Firestore แดชบอร์ดการตรวจสอบในคอนโซล Firebase"/>
เมตริก Cloud Monitoring รายการ
Cloud Monitoring รวบรวม เมตริก เหตุการณ์ และข้อมูลเมตาจากผลิตภัณฑ์ Google Cloud รายการ การใช้งาน แดชบอร์ดในคอนโซล Cloud Firestore จะรายงานข้อมูลเมตริกเดียวกัน ถึง ตั้งค่าหน้าแดชบอร์ดและการแจ้งเตือนการใช้งานที่กำหนดเอง ใช้ Cloud Monitoring
Cloud Monitoring มีเมตริก Cloud Firestore ต่อไปนี้
ชื่อเมตริก | คำอธิบาย |
---|---|
การอ่านเอกสาร |
จำนวนการอ่านเอกสารที่สำเร็จ ซึ่งคุณแบ่งเมตริกนี้ได้ ตามประเภทการอ่าน: LOOKUP หรือ QUERY เมตริกนี้ไม่รวมการอ่านจากการส่งออกที่มีการจัดการ การดำเนินงาน |
การเขียนเอกสาร |
จำนวนการเขียนเอกสารที่สำเร็จ คุณสามารถแจกแจงเมตริกตามประเภทการเขียนได้ ซึ่งได้แก่ CREATE หรือ UPDATE เมตริกนี้ไม่รวมการเขียนจากการนำเข้าที่มีการจัดการ การดำเนินงาน |
การลบเอกสาร | จำนวนการลบเอกสารที่สำเร็จ |
การเชื่อมต่อที่ใช้งานอยู่ |
จำนวนการเชื่อมต่อกับฐานข้อมูลที่ใช้งานอยู่ SDK สำหรับอุปกรณ์เคลื่อนที่และเว็บที่ใช้งานอยู่แต่ละรายการจะ การเชื่อมต่อเดียว ซึ่งแชร์กับสแนปชอตหลายรายการได้ Listener ของคุณ ไลบรารีไคลเอ็นต์เซิร์ฟเวอร์จะสร้างการเชื่อมต่อ 1 รายการต่อผู้รับฟังภาพรวม |
Listener ของสแนปชอต |
จำนวน Listener ของสแนปชอตในการเชื่อมต่อที่ใช้งานอยู่ทั้งหมด |
จำนวนการลบแบบ Time to Live |
จำนวนเอกสารทั้งหมดที่ลบโดย นโยบาย Time to Live (TTL) |
การหมดอายุแบบ Time to Live จนถึงการหน่วงเวลาการลบ |
เวลาที่ผ่านไประหว่างที่เอกสารหมดอายุตาม นโยบาย Time to Live (TTL) และเวลาที่ลบจริงๆ |
- การใช้งานการอัปเดตแบบเรียลไทม์
ใช้การเชื่อมต่อที่ใช้งานอยู่และสแนปชอตของเมตริก Listener เพื่อวัด การใช้งานการอัปเดตแบบเรียลไทม์
สมมติว่าผู้ใช้เปิดแอปของคุณในโทรศัพท์ จากนั้นแอปจะเชื่อมต่อกับ Cloud Firestore และติดตามการค้นหา 10 รายการ ทำให้เพิ่มขึ้น ตามการเชื่อมต่อที่ใช้งานอยู่ 1 รายการและ Listener ของสแนปชอต 10 รายการ
- อัตราการสุ่มตัวอย่าง
เมตริก Cloud Firestore จะได้รับการสุ่มตัวอย่างทุกนาที แต่การอัปเดตอาจ อาจใช้เวลาถึง 4 นาทีจึงจะปรากฏในแดชบอร์ด
เมตริกเวลาในการตอบสนอง
เมตริกเวลาในการตอบสนองของแบ็กเอนด์มีให้ใช้งานได้ผ่านเมตริก Google Cloud Firestore ทั่วไป
เช่น คุณจะดูกราฟเวลาในการตอบสนอง p50 ได้ในมุมมองเครื่องมือสำรวจเมตริกของ Cloud Console
ตั้งค่าแดชบอร์ด Cloud Monitoring
หากต้องการสร้างแดชบอร์ดด้วยเมตริก Cloud Firestore โปรดดู จัดการแดชบอร์ดที่กำหนดเอง และ เพิ่มวิดเจ็ตหน้าแดชบอร์ด
ขั้นตอนถัดไป
- ดูข้อมูลเพิ่มเติมเกี่ยวกับ Cloud Monitoring
- ดูข้อมูลเกี่ยวกับแนวทางปฏิบัติแนะนำสำหรับการตรวจสอบประสิทธิภาพของ Firestore