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