เกี่ยวข้องกับ Cloud Firestore Enterprise Edition เท่านั้น |
หน้านี้อธิบายวิธีใช้เมตริก Cloud Monitoring สำหรับ Cloud Firestore ที่เข้ากันได้กับ MongoDB เพื่อตรวจสอบฐานข้อมูล
Cloud Monitoring เมตริกสำหรับ Cloud Firestore ที่เข้ากันได้กับ MongoDB
ส่วนต่อไปนี้จะแสดงภาพรวมของเมตริกที่ใช้ได้สำหรับ Cloud Firestore ที่เข้ากันได้กับ MongoDB
ทรัพยากรที่มีการตรวจสอบ
ทรัพยากรที่ตรวจสอบใน Cloud Monitoring แสดงถึงเอนทิตีเชิงตรรกะหรือทางกายภาพ เช่น เครื่องเสมือน ฐานข้อมูล หรือแอปพลิเคชัน แหล่งข้อมูลที่ตรวจสอบ จะมีชุดเมตริกที่ไม่ซ้ำกันซึ่งสามารถสำรวจ รายงานผ่าน แดชบอร์ด หรือใช้เพื่อสร้างการแจ้งเตือนได้ นอกจากนี้ ทรัพยากรแต่ละรายการยังมีชุดป้ายกำกับ ทรัพยากร ซึ่งเป็นคู่คีย์-ค่าที่เก็บข้อมูลเพิ่มเติมเกี่ยวกับ ทรัพยากร ป้ายกำกับทรัพยากรใช้ได้กับเมตริกทั้งหมดที่เชื่อมโยงกับ ทรัพยากร
เมื่อใช้ Cloud Monitoring API ระบบจะตรวจสอบประสิทธิภาพของ Cloud Firestore ที่เข้ากันได้กับ MongoDB โดยใช้ทรัพยากรต่อไปนี้
แหล่งข้อมูล | คำอธิบาย |
firestore.googleapis.com/Database | ประเภททรัพยากรที่ตรวจสอบ
ซึ่งแสดงรายละเอียดสำหรับ project
location และ database_id |
เมตริก
ดูรายการเมตริกทั้งหมดสำหรับ Cloud Firestore ได้ที่เมตริก Cloud Firestore ส่วนต่อไปนี้จะอธิบายเมตริกบางส่วนที่พร้อมใช้งาน
เมตริกเวลาทำงานของบริการ
เมตริกserviceruntime
จะแสดงภาพรวมระดับสูงของการเข้าชมโปรเจ็กต์ เมตริกเหล่านี้ใช้ได้กับ Google Cloud API ส่วนใหญ่ ประเภททรัพยากรที่ตรวจสอบ
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 แสดงจำนวนการอ่าน การเขียน และการลบ เมตริก write จะแสดงรายละเอียดระหว่างการดำเนินการ "CREATE" และ "UPDATE" เมตริกเหล่านี้สอดคล้องกับการดำเนินการ CRUD
คุณใช้เมตริกต่อไปนี้เพื่อทำความเข้าใจว่าฐานข้อมูลของคุณมีการอ่าน จำนวนมากหรือมีการเขียนจำนวนมาก รวมถึงอัตราส่วนของเอกสารใหม่เทียบกับเอกสารที่ลบได้
document/delete_ops_count
: จำนวนการลบเอกสารที่สำเร็จdocument/read_ops_count
: จำนวนการอ่านเอกสารที่สำเร็จจาก การค้นหาหรือการค้นหาdocument/write_ops_count
: จำนวนการเขียนเอกสารที่สำเร็จ
เมตริกการเรียกเก็บเงิน
ใช้เมตริกเหล่านี้เพื่อทำความเข้าใจการใช้งานสำหรับการเรียกเก็บเงิน เมตริกเหล่านี้ไม่รวมการเรียกเก็บเงินจากการดำเนินการของผู้ดูแลระบบ (การจัดทำดัชนี การนำเข้า การส่งออก และการลบแบบเป็นกลุ่ม)
api/billable_read_units
: จำนวนหน่วยการอ่านที่เรียกเก็บเงินได้ คุณสามารถแบ่งการใช้งานตามชื่อบริการและเมธอด API ได้api/billable_write_units
: จำนวนหน่วยการเขียนที่เรียกเก็บเงินได้ คุณสามารถแบ่งการใช้งานตามชื่อบริการและเมธอด API ได้document/billable_managed_delete_write_units
: จำนวนหน่วยการเขียนที่เรียกเก็บเงินได้จากบริการลบที่มีการจัดการ เช่น TTL
เมตริกดัชนี
คุณสามารถเปรียบเทียบอัตราการเขียนดัชนีกับdocument/write_ops_count
เมตริก
เพื่อทำความเข้าใจการกระจายดัชนีได้
index/write_count
: จำนวนการเขียนดัชนี
เมตริก TTL
ระบบจะใช้เมตริก TTL สำหรับ Cloud Firestore ที่มีเมตริกความเข้ากันได้ของ MongoDB เพื่อตรวจสอบผลของนโยบาย TTL ที่บังคับใช้
document/ttl_deletion_count
: จำนวนเอกสารทั้งหมดที่บริการ TTL ลบdocument/ttl_expiration_to_deletion_delays
: เวลาที่ผ่านไประหว่างที่เอกสารที่มี TTL หมดอายุกับเวลาที่ระบบลบเอกสารนั้นจริง
ดูแดชบอร์ดที่กำหนดไว้ล่วงหน้าและสร้างแดชบอร์ดที่กำหนดเอง
Cloud Firestore ที่เข้ากันได้กับ MongoDB รองรับแดชบอร์ดที่กำหนดไว้ล่วงหน้าซึ่งใช้เมตริก Cloud Monitoring นอกจากนี้ คุณยังสร้างแดชบอร์ดที่กำหนดเองได้อีกด้วย
ดูเมตริกการใช้งานฐานข้อมูล
เปิดแดชบอร์ดการใช้งานในคอนโซล Google Cloud เพื่อดูการอ่าน เขียน และลบเอกสารในช่วงระยะเวลาหนึ่ง
การควบคุมการเข้าถึง
แดชบอร์ดการใช้งานต้องมีmonitoring.timeSeries.list
สิทธิ์ Identity and Access Management (IAM)
บทบาทเจ้าของ ผู้แก้ไข และผู้ดูโปรเจ็กต์จะให้สิทธิ์นี้ นอกจากนี้ คุณยังให้สิทธิ์นี้ได้
ผ่านบทบาทCloud Monitoring
หรือบทบาทที่กำหนดเอง
แดชบอร์ดการใช้งานฐานข้อมูล
หากต้องการดูเมตริกการใช้งานสำหรับฐานข้อมูล Cloud Firestore ที่เข้ากันได้กับ MongoDB ให้ทำดังนี้
ในคอนโซล Google Cloud ให้ไปที่หน้าฐานข้อมูล
เลือกฐานข้อมูลที่ต้องการจากรายการฐานข้อมูล
ในเมนูการนำทาง ให้คลิกการใช้งาน
แดชบอร์ดการใช้งานและรายงานการเรียกเก็บเงิน
Cloud Firestoreแดชบอร์ดการใช้งานในคอนโซล จะแสดงค่าประมาณของการใช้งาน ซึ่งจะช่วยให้คุณระบุการใช้งานที่เพิ่มขึ้นได้ อย่างไรก็ตาม แดชบอร์ดไม่ใช่มุมมองที่แน่นอนของการดำเนินการที่เรียกเก็บเงิน การใช้งานที่เรียกเก็บเงิน อาจสูงกว่า หากต้องการตรวจสอบการเรียกเก็บเงิน โปรดดูเมตริกการเรียกเก็บเงิน
ในกรณีที่ข้อมูลไม่ตรงกัน รายงานการเรียกเก็บเงินจะมี ลำดับความสำคัญเหนือกว่าแดชบอร์ดการใช้งาน
การดำเนินการนำเข้าและส่งออกทำให้เกิดความคลาดเคลื่อนระหว่างแดชบอร์ดการใช้งาน กับการใช้งานที่เรียกเก็บเงิน การอ่านและการเขียนที่ดำเนินการโดย การดำเนินการเหล่านี้จะไม่แสดงในแดชบอร์ดการใช้งาน
ดูเมตริกประสิทธิภาพของฐานข้อมูล
หน้าการตรวจสอบในส่วน Cloud Firestore ของคอนโซล Google Cloud มีแดชบอร์ดการตรวจสอบที่กำหนดไว้ล่วงหน้า เช่น เวลาในการตอบสนองของคำขอ (P50 และ P99), รหัสการตอบกลับ และสถิติการค้นหา (P50) นอกจากนี้ คุณยังสร้างแดชบอร์ดที่กำหนดเองได้สูงสุด 1 รายการ หากต้องการเข้าถึงหน้าการตรวจสอบ ของฐานข้อมูล ให้ทำตามขั้นตอนต่อไปนี้
ใน Google Cloud Console ให้เปิดหน้าCloud Firestore ฐานข้อมูล
เลือกฐานข้อมูลจากรายการ
ในเมนูการนำทาง ให้คลิกการตรวจสอบเพื่อเปิดแดชบอร์ด
สร้างแดชบอร์ด Cloud Monitoring ที่กำหนดเอง
ใน Cloud Monitoring แดชบอร์ดที่กําหนดเองช่วยให้คุณแสดงข้อมูลที่ เกี่ยวข้องกับคุณได้อย่างเป็นระเบียบ เช่น คุณอาจสร้างแดชบอร์ดเพื่อแสดงเมตริกประสิทธิภาพและนโยบายการแจ้งเตือนสำหรับโปรเจ็กต์ในสภาพแวดล้อมการผลิต
ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าแดชบอร์ดที่กำหนดเองได้ที่หัวข้อ จัดการแดชบอร์ดที่กำหนดเอง และเพิ่มวิดเจ็ตแดชบอร์ด
สร้างนโยบายการแจ้งเตือน
ใน Cloud Monitoring คุณสามารถสร้างการแจ้งเตือนเพื่อแจ้งให้คุณทราบ เมื่อมีการเปลี่ยนแปลงในเงื่อนไขเมตริก คุณสามารถใช้การแจ้งเตือนเหล่านี้เพื่อรับ การแจ้งเตือนเกี่ยวกับปัญหาที่อาจเกิดขึ้นก่อนที่จะส่งผลกระทบต่อผู้ใช้
ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างการแจ้งเตือนได้ที่สร้างนโยบายการแจ้งเตือนตามเกณฑ์เมตริก
ลองดูตัวอย่างต่อไปนี้ซึ่งเราสร้างนโยบายการแจ้งเตือนเวลาในการตอบสนอง นโยบายการแจ้งเตือนจะตรวจสอบเวลาในการตอบสนองเปอร์เซ็นไทล์ที่ 99 ในช่วงเวลา 5 นาที หากเวลาในการตอบสนอง p99 สูงกว่า 250 มิลลิวินาทีเป็นเวลา 5 นาที ระบบจะทริกเกอร์การแจ้งเตือน
คอนโซล
ในคอนโซล Google Cloud ให้ไปที่หน้าการตรวจสอบ แล้วเลือก notifications การแจ้งเตือน
เลือกสร้างนโยบาย
เลือกเมตริกเวลาในการตอบสนองของคำขอจากแหล่งข้อมูล API ที่ใช้
เพิ่มตัวกรองบริการสำหรับ
firestore.googleapis.com
สำหรับ ฐานข้อมูลมาตรฐานของ Cloud Firestoreคลิกถัดไปเพื่อกำหนดค่าทริกเกอร์
เลือกประเภทเงื่อนไขเป็นเกณฑ์
ระบบจะตั้งค่าเงื่อนไขเกณฑ์เป็นค่าเกณฑ์ 250 มิลลิวินาที ระบบจะทริกเกอร์การแจ้งเตือนเมื่อค่าเวลาในการตอบสนองเปอร์เซ็นไทล์ที่ 99 ยังคงเท่าเดิมตลอดระยะเวลาของหน้าต่างแบบเลื่อน (5 นาที)
ตั้งค่า Threshold value เป็น 250
คลิกถัดไปเพื่อกำหนดค่าการแจ้งเตือน
ตั้งชื่อนโยบายการแจ้งเตือน แล้วคลิกถัดไป
ตรวจสอบการกำหนดค่าการแจ้งเตือน แล้วคลิกสร้างนโยบาย
MQL
คุณสามารถใช้นโยบายการแจ้งเตือนเวลาในการตอบสนองเดียวกันได้โดยใช้การค้นหาภาษาการค้นหาการตรวจสอบ (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'