ตรวจสอบเมตริกฐานข้อมูล

หน้านี้จะอธิบายวิธีใช้Cloud MonitoringเมตริกสำหรับCloud Firestore เพื่อตรวจสอบฐานข้อมูล

เมตริก Cloud Monitoring สำหรับ Cloud Firestore

ส่วนต่อไปนี้จะแสดงภาพรวมของเมตริกที่พร้อมใช้งานสำหรับ Cloud Firestore

ทรัพยากรที่มีการตรวจสอบ

ทรัพยากรที่มีการตรวจสอบใน Cloud Monitoring แสดงถึงเอนทิตีเชิงตรรกะหรือทางกายภาพ เช่น เครื่องเสมือน ฐานข้อมูล หรือแอปพลิเคชัน ทรัพยากรที่มีการตรวจสอบมีชุดเมตริกที่ไม่ซ้ำกันซึ่งสามารถสำรวจ รายงานผ่านแดชบอร์ด หรือใช้เพื่อสร้างการแจ้งเตือนได้ นอกจากนี้ ทรัพยากรแต่ละรายการยังมีชุดป้ายกำกับทรัพยากร ซึ่งเป็นคู่คีย์-ค่าที่เก็บข้อมูลเพิ่มเติมเกี่ยวกับทรัพยากร ป้ายกำกับทรัพยากรพร้อมใช้งานสำหรับเมตริกทั้งหมดที่เชื่อมโยงกับทรัพยากร

ประสิทธิภาพจะได้รับการตรวจสอบโดยใช้ทรัพยากรต่อไปนี้ผ่าน Cloud Monitoring APICloud Firestore

แหล่งข้อมูล คำอธิบาย
firestore.googleapis.com/Database ประเภททรัพยากรที่มีการตรวจสอบซึ่งแสดงรายละเอียดสำหรับ project, location และ database_id

เมตริก

ดูรายการเมตริกทั้งหมดสำหรับ Cloud Firestore ได้ที่ Cloud Firestore เมตริก ส่วนต่อไปนี้จะอธิบายเมตริกบางรายการที่พร้อมใช้งาน

เมตริกเวลาทำงานของบริการ

เมตริก serviceruntime แสดงภาพรวมระดับสูงของการเข้าชมโปรเจ็กต์ เมตริกเหล่านี้พร้อมใช้งานสำหรับ API ส่วนใหญ่Google Cloud ประเภททรัพยากรที่มีการตรวจสอบ consumed_api มีเมตริกทั่วไปเหล่านี้ ระบบจะสุ่มตัวอย่างเมตริกเหล่านี้ทุกๆ 30 นาที ซึ่งจะทำให้ข้อมูลราบรื่นขึ้น

ป้ายกำกับทรัพยากรที่สำคัญสำหรับเมตริก serviceruntime คือ method ป้ายกำกับนี้แสดงถึงเมธอด RPC พื้นฐานที่เรียกใช้ เมธอด SDK ที่คุณเรียกใช้อาจไม่ได้ตั้งชื่อเหมือนกับเมธอด RPC พื้นฐาน เนื่องจาก SDK มีการแยกส่วน API ระดับสูง อย่างไรก็ตาม เมื่อพยายามทำความเข้าใจวิธีที่แอปพลิเคชันโต้ตอบกับ Cloud Firestore คุณควรทำความเข้าใจเมตริกตามชื่อเมธอด RPC

หากต้องการทราบเมธอด RPC พื้นฐานสำหรับเมธอด SDK ที่กำหนด โปรดดูเอกสารประกอบเกี่ยวกับ API

api/request_latencies

เมตริก api/request_latencies แสดงการกระจายเวลาในการตอบสนองของคำขอที่เสร็จสมบูรณ์ทั้งหมด

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

เมตริกการดำเนินการกับเอกสาร

Cloud Firestore แสดงจำนวนการอ่าน การเขียน และการลบ เมตริกการเขียนจะแสดงรายละเอียดระหว่างการดำเนินการ "CREATE" และ "UPDATE" เมตริกเหล่านี้สอดคล้องกับการดำเนินการ CRUD

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

  • document/delete_ops_count: จำนวนการลบเอกสารที่สำเร็จ
  • document/read_ops_count: จำนวนการอ่านเอกสารที่สำเร็จจากการค้นหาหรือการค้นหา
  • document/write_ops_count: จำนวนการเขียนเอกสารที่สำเร็จ

เมตริกการเรียกเก็บเงิน

ใช้เมตริกเหล่านี้เพื่อทำความเข้าใจการใช้งานสำหรับการเรียกเก็บเงิน เมตริกเหล่านี้ไม่รวมการเรียกเก็บเงินจากการดำเนินการของผู้ดูแลระบบ (การจัดทำดัชนี การนำเข้า การส่งออก และการลบจำนวนมาก)

เมตริกของดัชนี

คุณสามารถเปรียบเทียบอัตราการเขียนดัชนีกับเมตริก document/write_ops_count เพื่อทำความเข้าใจการกระจายดัชนี

  • index/write_count: จำนวนการเขียนดัชนี

เมตริก TTL

เมตริก TTL สำหรับ Cloud Firestore เมตริก ใช้เพื่อ ตรวจสอบผลของ นโยบาย TTL ที่บังคับใช้

  • document/ttl_deletion_count: จำนวนเอกสารทั้งหมดที่บริการ TTL ลบ
  • document/ttl_expiration_to_deletion_delays: เวลาที่ผ่านไปตั้งแต่เอกสารที่มี TTL หมดอายุจนถึงเวลาที่ลบเอกสารจริง

ดูแดชบอร์ดที่กำหนดไว้ล่วงหน้าและสร้างแดชบอร์ดที่กำหนดเอง

Cloud Firestore รองรับแดชบอร์ดที่กำหนดไว้ล่วงหน้าซึ่งใช้เมตริก Cloud Monitoring นอกจากนี้ คุณยังสร้างแดชบอร์ดที่กำหนดเองได้ด้วย

ดูเมตริกการใช้งานฐานข้อมูล

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

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

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

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

หากต้องการดูเมตริกการใช้งานสำหรับฐานข้อมูล Cloud Firestore ให้ทำดังนี้

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

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

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

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

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

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

ในกรณีที่มีความคลาดเคลื่อน รายงานการเรียกเก็บเงินจะมีลำดับความสำคัญสูงกว่าแดชบอร์ดการใช้งาน

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

ดูเมตริกประสิทธิภาพของฐานข้อมูล

หน้าการตรวจสอบ ในส่วนCloud Firestore ของ คอนโซล Google Cloud มีแดชบอร์ดการตรวจสอบที่กำหนดไว้ล่วงหน้า เช่น เวลาในการตอบสนองของคำขอ (P50 และ P99), รหัสการตอบกลับ และสถิติการค้นหา (P50) นอกจากนี้ คุณยังสร้างแดชบอร์ดที่กำหนดเองได้สูงสุด 1 รายการ หากต้องการเข้าถึงหน้าการตรวจสอบ สำหรับฐานข้อมูล ให้ทำตามขั้นตอนต่อไปนี้

  1. ในคอนโซล Google Cloud ให้เปิดหน้าCloud Firestore ฐานข้อมูล

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

  2. เลือกฐานข้อมูลจากรายการ

  3. คลิกการตรวจสอบ ในเมนูการนำทางเพื่อเปิดแดชบอร์ด

สร้างแดชบอร์ดที่กำหนดเองCloud Monitoring

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

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

สร้างนโยบายการแจ้งเตือน

ใน Cloud Monitoring คุณสามารถสร้าง การแจ้งเตือน เพื่อแจ้งให้ คุณทราบเมื่อมีการเปลี่ยนแปลงในเงื่อนไขเมตริก คุณสามารถใช้การแจ้งเตือนเหล่านี้เพื่อรับการแจ้งเตือนเกี่ยวกับปัญหาที่อาจเกิดขึ้นก่อนที่จะส่งผลกระทบต่อผู้ใช้

ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างการแจ้งเตือนได้ที่ สร้างนโยบายการแจ้งเตือนตามเกณฑ์เมตริก

พิจารณาตัวอย่างต่อไปนี้ที่เราสร้างนโยบายการแจ้งเตือนเวลาในการตอบสนอง นโยบายการแจ้งเตือนจะตรวจสอบเวลาในการตอบสนอง p99 ในช่วงเวลา 5 นาที หากเวลาในการตอบสนอง p99 สูงกว่า 250 มิลลิวินาทีเป็นเวลา 5 นาที ระบบจะทริกเกอร์การแจ้งเตือน

คอนโซล

  1. ในคอนโซล Google Cloud ให้ไปที่หน้าการตรวจสอบ แล้วเลือก   การแจ้งเตือน

    ไปที่การตรวจสอบ

  2. เลือกสร้างนโยบาย

  3. เลือกเมตริกเวลาในการตอบสนองของคำขอ จากทรัพยากร Consumed API

  4. เพิ่มตัวกรองบริการสำหรับ firestore.googleapis.com สำหรับฐานข้อมูล Firestore ในโหมด Native

  5. คลิกถัดไป เพื่อกำหนดค่าทริกเกอร์

  6. เลือกประเภทเงื่อนไข เป็นเกณฑ์

    เงื่อนไขเกณฑ์จะตั้งค่าเป็นค่าเกณฑ์ 250 มิลลิวินาที ระบบจะทริกเกอร์การแจ้งเตือนเมื่อค่าเวลาในการตอบสนอง p99 ยังคงเท่าเดิมตลอดระยะเวลาของช่วงเวลา (5 นาที)

  7. ตั้งค่าค่าเกณฑ์ เป็น 250

  8. คลิกถัดไป เพื่อกำหนดค่าการแจ้งเตือน

  9. ตั้งชื่อนโยบายการแจ้งเตือน แล้วคลิกถัดไป

  10. ตรวจสอบการกำหนดค่าการแจ้งเตือน แล้วคลิกสร้างนโยบาย

MQL

คุณสามารถใช้นโยบายการแจ้งเตือนเวลาในการตอบสนองเดียวกันได้โดยใช้การค้นหา Monitoring Query Language (MQL) ดูตัวอย่างเพิ่มเติมเกี่ยวกับการใช้ MQL ได้ที่ ตัวอย่างการค้นหา MQL

fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
    [value_request_latencies_percentile:
      percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'