ตรวจสอบกิจกรรม Cloud Firestore

หน้านี้อธิบายวิธีตรวจสอบการใช้งาน Cloud Firestore และ พบปัญหาที่อาจเกิดขึ้นในแอป

แดชบอร์ดการใช้งาน

ใช้แดชบอร์ดการใช้งานในคอนโซล Google Cloud Platform และคอนโซล Firebase เพื่อดู เอกสารก็อ่าน เขียน และลบได้เมื่อเวลาผ่านไป

การควบคุมการเข้าถึง

แดชบอร์ดการใช้งานต้องมีสิทธิ์ Cloud IAM ของ monitoring.timeSeries.list บทบาทเจ้าของโปรเจ็กต์ ผู้แก้ไข และผู้ดูจะให้สิทธิ์นี้ นอกจากนี้ คุณยังให้สิทธิ์นี้ ผ่านบทบาท Cloud Monitoring หรือบทบาทที่กำหนดเอง

แดชบอร์ดการใช้งานฐานข้อมูล

หากต้องการดูเมตริกการใช้งานสำหรับฐานข้อมูล Cloud Firestore ให้เปิดการใช้งานของฐานข้อมูล ในคอนโซล GCP

  1. ในคอนโซล Google Cloud Platform ให้ไปที่หน้าฐานข้อมูล

    ไปที่ Databases

  2. เลือกฐานข้อมูลที่ต้องการจากรายการฐานข้อมูล

  3. ในเมนูการนำทาง ให้คลิกการใช้งาน

  4. คลิกลิงก์ในข้อความที่ปรากฏบนหน้าเว็บเพื่อดูการใช้งานฐานข้อมูล

    แดชบอร์ดการใช้งานฐานข้อมูล Cloud Firestore ในคอนโซล GCP

แดชบอร์ดการใช้งานรวม

หากโปรเจ็กต์มีฐานข้อมูล Cloud Firestore หลายรายการ คุณจะดูได้ เมตริกการใช้งานรวมในคอนโซล GCP หรือคอนโซล Firebase

คอนโซล GCP

ในคอนโซล Google Cloud Platform ให้ไปที่หน้าการใช้งานโปรเจ็กต์

ไปที่การใช้งานโปรเจ็กต์ GCP

แดชบอร์ดการใช้งานโปรเจ็กต์จะแสดงการดำเนินการของเอกสารเมื่อเวลาผ่านไป ดังนี้

แดชบอร์ดการใช้งานโปรเจ็กต์ Cloud Firestore ในคอนโซล GCP

คอนโซล Firebase

ไปที่หน้าการใช้งาน Cloud Firestore (คอนโซล Firebase)

แดชบอร์ดการใช้งาน Cloud Firestore ในคอนโซล Firebase

แดชบอร์ดการใช้งานและรายงานการเรียกเก็บเงิน

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

การดำเนินการที่ทำให้เกิดความคลาดเคลื่อนระหว่างแดชบอร์ดการใช้งานและการเรียกเก็บเงิน การใช้งานประกอบด้วย:

  • การดำเนินการนำเข้าและส่งออก การอ่านและเขียนที่ดำเนินการโดยการดำเนินการเหล่านี้ จะไม่แสดงในแดชบอร์ดการใช้งาน
  • การเขียนแบบยืนยันเท่านั้นโดยไม่มีการดำเนินการ การเขียนที่ยืนยันการมีอยู่หรือไม่มีอยู่ของเอกสารจะมีส่วนร่วมในการดำเนินการอ่านที่มีการเรียกเก็บเงิน แต่จะแสดงเป็น "UPDATE_NOOP" และ "DELETE_NOOP" ตามลำดับในหน้าแดชบอร์ดการใช้งานการเขียน
  • การเขียนที่ไม่มีการดำเนินการ การดำเนินการที่ไม่ส่งผลให้เกิดการเปลี่ยนแปลงในฐานข้อมูล เช่น การอัปเดตที่จะไม่เปลี่ยนแปลงค่าฟิลด์ หรือการเขียนไปยัง เอกสารอาจแสดงในหน้าแดชบอร์ดการใช้งานเป็น "UPDATE_NOOP" หรือ "DELETE_NOOP" แม้ว่าจะแสดงเป็น "NOOP" ก็ยังคงมีการเรียกเก็บเงิน
  • การเขียนที่ยุบแล้ว ในกรณีที่มีการเขียนหลายรายการในเอกสารเดียวกันอย่างรวดเร็ว แดชบอร์ดการใช้งานอาจยุบการเขียนหลายรายการไว้ด้วยกัน และ นับเป็นหนึ่งเดียว เมื่อใช้การเรียกเก็บเงิน ระบบจะนับการเขียนแต่ละรายการแยกกัน

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

  • การค้นหาที่แสดงผลลัพธ์เป็น 0 ข้อความค้นหาที่ไม่มีผลลัพธ์ ค่าใช้จ่ายสำหรับการดำเนินการอ่านครั้งเดียว มีการเรียกเก็บเงินการใช้งานนี้ แต่ไม่ปรากฏ ในแดชบอร์ดการใช้งาน
  • อ่านการดำเนินการจากการอ่านรายการดัชนี มีการเรียกเก็บเงินการใช้งานนี้ จะปรากฏในแดชบอร์ดการใช้งาน ตัวอย่างเช่น การเรียกเก็บเงินค่าการค้นหาการรวมสำหรับรายการดัชนีที่อ่านแล้ว แต่การใช้งานนี้ไม่ปรากฏในแดชบอร์ดการใช้งาน

แดชบอร์ดการใช้งานสำหรับการลบจะไม่บันทึกการดำเนินการหมดอายุอัตโนมัติที่ดำเนินการโดยนโยบาย 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

เมตริกนี้ไม่รวมการอ่านจากการส่งออกที่มีการจัดการ operations.

การเขียนเอกสาร

จำนวนการเขียนเอกสารที่สำเร็จ คุณสามารถแจกแจงรายละเอียดเมตริก ตามประเภทการเขียน เช่น "สร้าง" หรือ "อัปเดต"

เมตริกนี้ไม่รวมการเขียนจากการนำเข้าที่มีการจัดการ operations.

การลบเอกสาร จำนวนการลบเอกสารที่สำเร็จ
การเชื่อมต่อที่ใช้งานอยู่

จำนวนการเชื่อมต่อที่ใช้งานอยู่ไปยังฐานข้อมูลของคุณ

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

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 นาทีจึงจะปรากฏในแดชบอร์ด

เมตริกเวลาในการตอบสนอง

เมตริกเวลาในการตอบสนองของแบ็กเอนด์มีให้บริการผ่านเมตริก Firestore ทั่วไปของ Google Cloud

เช่น คุณจะดูกราฟเวลาในการตอบสนอง p50 ได้ในมุมมองเครื่องมือสำรวจเมตริกของ Cloud Console

ตั้งค่าหน้าแดชบอร์ด Cloud Monitoring

หากต้องการตั้งค่าหน้าแดชบอร์ดด้วยเมตริก Cloud Firestore โปรดดู จัดการแดชบอร์ดที่กำหนดเอง และ เพิ่มวิดเจ็ตหน้าแดชบอร์ด

ขั้นตอนถัดไป