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

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

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

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

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

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

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

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

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

    ไปที่ฐานข้อมูล

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

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

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

    <span class=หน้าแดชบอร์ดการใช้งานฐานข้อมูล Cloud Firestore ในคอนโซล Google Cloud"/>

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

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

คอนโซล Google Cloud

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

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

แดชบอร์ดการใช้งานโปรเจ็กต์จะแสดงการดำเนินการกับเอกสารในช่วงระยะเวลาหนึ่งๆ ดังนี้

<span class=แดชบอร์ดการใช้งานโปรเจ็กต์ Cloud Firestore ในคอนโซล Google Cloud"/>

คอนโซล Firebase

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

<span class=หน้าแดชบอร์ดการใช้งาน Cloud Firestore ในคอนโซล Firebase"/>

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

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

การดำเนินการที่ทำให้เกิดความแตกต่างระหว่างแดชบอร์ดการใช้งานกับการใช้งานที่เรียกเก็บเงิน ได้แก่

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

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

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

แดชบอร์ดการใช้งานสำหรับการลบจะไม่บันทึกการดำเนินการหมดอายุอัตโนมัติที่ดำเนินการโดยนโยบายกำหนดเวลาหมดอายุ (TTL) โปรดดูเมตริก TTL จาก Cloud Monitoring

การใช้กฎความปลอดภัย

นอกจากนี้ คอนโซล Firebase ยังมีแดชบอร์ดการประเมินกฎความปลอดภัย ซึ่งเป็นมุมมองภาพรวมที่เป็นประโยชน์เกี่ยวกับการเรียกใช้กฎ คุณสามารถเสริมแดชบอร์ดนี้ด้วยการวิเคราะห์โดยละเอียดใน Cloud Monitoring

ไปที่กฎ

<span class=แดชบอร์ดการตรวจสอบกฎของ 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 (TTL) และเวลาที่ระบบลบเอกสารจริง

การใช้งานการอัปเดตแบบเรียลไทม์

ใช้เมตริกการเชื่อมต่อที่ใช้งานอยู่และ Listener ของสแนปชอตเพื่อวัดการใช้การอัปเดตแบบเรียลไทม์

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

อัตราการสุ่มตัวอย่าง

ระบบจะสุ่มตัวอย่างเมตริก Cloud Firestore ทุกนาที แต่การอัปเดตอาจใช้เวลาถึง 4 นาทีจึงจะปรากฏในแดชบอร์ด

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

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

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

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

หากต้องการดูแดชบอร์ดที่กําหนดไว้ล่วงหน้าหรือตั้งค่าแดชบอร์ด โปรดดูใช้หน้าแดชบอร์ดการตรวจสอบ

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