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

ในการจัดการโปรเจ็กต์ Firebase คุณควรตรวจสอบการใช้ทรัพยากรของ Realtime Database (เช่น จํานวนผู้ใช้ที่เชื่อมต่ออยู่ ปริมาณพื้นที่เก็บข้อมูลที่ใช้ในฐานข้อมูล) และผลกระทบที่การใช้งานดังกล่าวมีต่อใบเรียกเก็บเงิน

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

สําหรับการใช้งานทรัพยากร ทั้งแท็บการใช้งานในคอนโซล Firebase และเมตริกที่ใช้ได้ผ่าน Cloud Monitoring ช่วยให้คุณตรวจสอบการใช้งาน Realtime Database ได้

รับการแจ้งเตือนของ Firebase

คุณเลือกรับการแจ้งเตือนทางอีเมลได้เมื่อการใช้งาน Realtime Database ของคุณใกล้ถึงขีดจํากัดข้อใดข้อหนึ่งสำหรับแพ็กเกจราคา โดยค่าเริ่มต้น Firebase จะส่งการแจ้งเตือนทางอีเมลเมื่อคุณใช้ถึงหรือเกินขีดจํากัดของแพ็กเกจ แต่คุณเลือกรับการแจ้งเตือนเหล่านี้ได้ตั้งแต่เนิ่นๆ เพื่อปรับแพ็กเกจหรือการใช้งานและหลีกเลี่ยงการหยุดชะงักของบริการ

การแจ้งเตือน Firebase และการตั้งค่าเหล่านี้มีผลกับทั้งโปรเจ็กต์ ซึ่งหมายความว่าโดยค่าเริ่มต้น สมาชิกโปรเจ็กต์ทุกคนที่มีสิทธิ์ที่จำเป็นในการรับการแจ้งเตือนจะได้รับอีเมลเมื่อมีการเรียกให้แสดงการแจ้งเตือน Realtime Database ระบบจะส่งอีเมลไปยังอีเมลแต่ละรายการ (ไม่ใช่กลุ่มบัญชี เช่น กลุ่ม Google หรือบัญชี Google Workspace)

เปิด/ปิดการแจ้งเตือนสําหรับบัญชีของคุณเอง

สำหรับบัญชีของคุณเอง คุณสามารถเปิด/ปิดการแจ้งเตือน Realtime Database ได้โดยไม่ส่งผลต่อสมาชิกโปรเจ็กต์คนอื่นๆ โปรดทราบว่าคุณยังคงต้องมีสิทธิ์ที่จําเป็นเพื่อรับการแจ้งเตือน

หากต้องการเปิดหรือปิดการแจ้งเตือน Realtime Database ให้ทำตามขั้นตอนต่อไปนี้

  1. ในคอนโซล Firebase ให้ไปที่ การแจ้งเตือน Firebase ที่มุมขวาบน
  2. จากนั้นไปที่ การตั้งค่า แล้วตั้งค่ากำหนดบัญชีสำหรับRealtime Database การแจ้งเตือน

ตรวจสอบการใช้งานในคอนโซล Firebase

หากต้องการดูการเชื่อมต่อและปริมาณการใช้อินเทอร์เน็ต Realtime Database ในปัจจุบัน ให้ดูในแท็บการใช้งานในคอนโซล Firebase คุณสามารถตรวจสอบการใช้งานในช่วงที่เรียกเก็บเงินปัจจุบัน 30 วันที่ผ่านมา หรือ 24 ชั่วโมงที่ผ่านมา

Firebase จะแสดงสถิติการใช้งานสําหรับเมตริกต่อไปนี้

  • การเชื่อมต่อ: จำนวนการเชื่อมต่อแบบเรียลไทม์ที่เปิดอยู่พร้อมกันในขณะนี้ไปยังฐานข้อมูลของคุณ ซึ่งรวมถึงการเชื่อมต่อแบบเรียลไทม์ต่อไปนี้ WebSocket, การโพลลิงแบบนาน และเหตุการณ์ที่เซิร์ฟเวอร์ HTML ส่ง แต่ไม่รวมคำขอ RESTful
  • พื้นที่เก็บข้อมูล: ปริมาณข้อมูลที่จัดเก็บไว้ในฐานข้อมูล ซึ่งไม่รวมโฮสติ้งของ Firebase หรือข้อมูลที่จัดเก็บผ่านผลิตภัณฑ์อื่นๆ ของ Firebase
  • การดาวน์โหลด: ไบต์ทั้งหมดที่ดาวน์โหลดจากฐานข้อมูลของคุณ รวมถึงโปรโตคอลและส่วนเกินของการเข้ารหัส
  • การโหลด: กราฟนี้แสดงปริมาณฐานข้อมูลที่ใช้งานอยู่และประมวลผลคําขอในช่วงเวลา 1 นาที คุณอาจพบปัญหาด้านประสิทธิภาพในขณะที่ความคืบหน้าใกล้ถึง 100%

แท็บกฎสําหรับ Realtime Database ในคอนโซล Firebase

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

โปรดดูข้อมูลเพิ่มเติมที่หัวข้อตรวจสอบกฎความปลอดภัยใน Cloud Monitoring

แท็บการใช้งานสําหรับฐานข้อมูลเรียลไทม์ในคอนโซล Firebase

ตรวจสอบการใช้งานด้วย Cloud Monitoring

เมตริกการใช้งาน

หากต้องการใช้ Cloud Monitoring เพื่อตรวจสอบการใช้งานที่มีการเรียกเก็บเงิน ให้ติดตามเมตริกต่อไปนี้ โปรดทราบว่าชื่อประเภทเมตริกทั้งหมดจะมี firebasedatabase.googleapis.com/ นำหน้า

ชื่อเมตริก คำอธิบาย
จำนวนไบต์ของเพย์โหลดที่ส่ง

network/sent_payload_bytes_count เมตริกนี้แสดงขนาดของข้อมูลที่ขอผ่านการดำเนินการของฐานข้อมูล (รวมถึงการเรียกข้อมูล การค้นหา การเขียน การอัปเดตผู้ฟังแบบเรียลไทม์ และการออกอากาศ) โดยไม่รวมค่าใช้จ่ายเพิ่มเติมในการเชื่อมต่อ (โปรโตคอลหรือการเข้ารหัส) ค่า "sent_payload_bytes_count" จะเป็นส่วนประกอบของต้นทุนแบนด์วิดท์ขาออก แต่จะไม่รวมอยู่ในต้นทุนทั้งหมดที่เรียกเก็บ ค่านี้เป็นค่าประมาณของข้อมูลที่ส่งจากฐานข้อมูลเพื่อตอบสนองคำขอ แต่เนื่องจากค่านี้วัดขนาดของข้อมูลในเพย์โหลดที่ขอ ไม่ใช่ข้อมูลที่ส่งจริง จึงอาจไม่ถูกต้องเสมอไป

จำนวนไบต์เพย์โหลดและโปรโตคอลที่ส่ง

network/sent_payload_and_protocol_bytes_count เมตริกนี้แสดงขนาดของทั้งข้อมูลเพย์โหลดที่อธิบายไว้ข้างต้นและค่าใช้จ่ายเพิ่มเติมของโปรโตคอลที่จําเป็นต่อการเชื่อมต่อ (เช่น ส่วนหัว HTTP, เฟรม WebSocket และเฟรมโปรโตคอลเรียลไทม์ของ Firebase) โดยไม่รวมค่าใช้จ่ายในการเข้ารหัสในการเชื่อมต่อที่ปลอดภัย

จํานวนไบต์ที่ส่ง network/sent_bytes_count เมตริกนี้แสดงขนาดโดยประมาณของข้อมูลทั้งหมดที่ส่งออกจากฐานข้อมูลผ่านการอ่าน ซึ่งรวมถึงข้อมูลเพย์โหลดที่ส่งไปยังไคลเอ็นต์จริงๆ นอกเหนือจากโปรโตคอลและค่าใช้จ่ายเพิ่มเติมในการเข้ารหัสที่ส่งผลให้เกิดต้นทุนการเชื่อมต่อ ข้อมูลนี้แสดงแบนด์วิดท์ขาออกทั้งหมดในบิล Realtime Database ได้อย่างถูกต้องที่สุด
ไบต์ทั้งหมด

storage/total_bytes. ใช้เมตริกนี้เพื่อตรวจสอบปริมาณข้อมูลที่จัดเก็บในฐานข้อมูล ข้อมูลที่จัดเก็บใน Realtime Database จะส่งผลต่อค่าบริการเรียกเก็บเงิน

รวมเมตริกในแผนภูมิในแดชบอร์ดเพื่อดูข้อมูลเชิงลึกและภาพรวมที่เป็นประโยชน์ เช่น ลองใช้ชุดค่าผสมต่อไปนี้

  • ข้อมูลขาออก: ใช้เมตริก network/sent_bytes_count, network/sent_payload_and_protocol_bytes_count และ network/sent_payload_bytes_count เพื่อตรวจหาปัญหาที่อาจเกิดขึ้นเกี่ยวกับค่าใช้จ่ายเพิ่มเติมของโปรโตคอลหรือการเข้ารหัสที่ส่งผลให้เกิดค่าใช้จ่ายที่ไม่คาดคิดในใบเรียกเก็บเงิน หากเห็นความคลาดเคลื่อนอย่างมากระหว่างขนาดของข้อมูลเพย์โหลดที่ขอกับเมตริกอื่นๆ ที่แสดงถึงค่าใช้จ่ายเพิ่มเติมของการเชื่อมต่อ คุณอาจต้องแก้ปัญหาที่อาจทําให้หมดเวลาหรือมีการเชื่อมต่อบ่อย หากไม่ได้ใช้ตั๋วเซสชัน TLS คุณอาจลองใช้เพื่อลดค่าใช้จ่ายเพิ่มเติมในการเชื่อมต่อ SSL สำหรับการเชื่อมต่อที่กลับมาทำงานอีกครั้ง
  • การดำเนินการ: ใช้เมตริก io/database_load เพื่อดูปริมาณการโหลดฐานข้อมูลทั้งหมดที่การดำเนินการแต่ละประเภทใช้ อย่าลืมจัดกลุ่ม io/database_loadตามประเภทเพื่อแก้ปัญหาการดำเนินการประเภทต่างๆ
  • พื้นที่เก็บข้อมูล: ใช้ storage/limit และ storage/total_bytes เพื่อตรวจสอบปริมาณพื้นที่เก็บข้อมูลที่ใช้เทียบกับขีดจำกัดพื้นที่เก็บข้อมูล Realtime Database เท่านั้น

ดูรายการเมตริก Realtime Database ทั้งหมดที่ใช้ได้ผ่าน Cloud Monitoring

สร้างพื้นที่ทํางานของ Cloud Monitoring

หากต้องการตรวจสอบ Realtime Database ด้วย Cloud Monitoring คุณต้องตั้งค่าพื้นที่ทํางานสําหรับโปรเจ็กต์ พื้นที่ทํางานจะจัดระเบียบข้อมูลการตรวจสอบจากโปรเจ็กต์อย่างน้อย 1 รายการ หลังจากตั้งค่าเวิร์กスペースแล้ว คุณจะสร้างแดชบอร์ดที่กำหนดเองและนโยบายการแจ้งเตือนได้

  1. เปิดหน้าการตรวจสอบระบบคลาวด์

    หากโปรเจ็กต์เป็นส่วนหนึ่งของพื้นที่ทํางานอยู่แล้ว หน้าการตรวจสอบระบบคลาวด์จะเปิดขึ้น หรือเลือกพื้นที่ทํางานสําหรับโปรเจ็กต์

  2. เลือกตัวเลือกพื้นที่ทํางานใหม่หรือเลือกพื้นที่ทํางานที่มีอยู่

  3. คลิกเพิ่ม หลังจากสร้างเวิร์กスペースแล้ว หน้าการตรวจสอบระบบคลาวด์จะเปิดขึ้น

สร้างแดชบอร์ดและเพิ่มแผนภูมิ

แสดงเมตริก Realtime Database ที่รวบรวมจาก Cloud Monitoring ในแผนภูมิและแดชบอร์ดของคุณเอง

ก่อนดําเนินการต่อ โปรดตรวจสอบว่าโปรเจ็กต์ของคุณเป็นส่วนหนึ่งของเวิร์กสเปซการตรวจสอบระบบคลาวด์

  1. ในหน้าการตรวจสอบระบบคลาวด์ ให้เปิดพื้นที่ทํางานแล้วไปที่หน้าแดชบอร์ด

    ไปที่หน้าแดชบอร์ด

  2. คลิกสร้างหน้าแดชบอร์ด แล้วป้อนชื่อหน้าแดชบอร์ด

  3. คลิกเพิ่มแผนภูมิที่มุมขวาบน

  4. ป้อนชื่อแผนภูมิในหน้าต่างเพิ่มแผนภูมิ คลิกแท็บเมตริก

  5. ในช่องค้นหาประเภททรัพยากรและเมตริก ให้ป้อน Firebase Realtime Database จากเมนูแบบเลื่อนลงที่สร้างขึ้นโดยอัตโนมัติ ให้เลือกเมตริก Realtime Database รายการใดรายการหนึ่ง

  6. หากต้องการเพิ่มเมตริกอื่นๆ ลงในแผนภูมิเดียวกัน ให้คลิกเพิ่มเมตริก แล้วทําตามขั้นตอนก่อนหน้าซ้ำ

  7. (ไม่บังคับ) ปรับแต่งแผนภูมิตามต้องการ เช่น ในช่องตัวกรอง ให้คลิก + เพิ่มตัวกรอง เลื่อนลง แล้วเลือกค่าหรือช่วงของเมตริกที่ต้องการใช้กรองแผนภูมิ

  8. คลิกบันทึก

ดูข้อมูลเพิ่มเติมเกี่ยวกับแผนภูมิ Cloud Monitoring ได้ที่หัวข้อการทํางานกับแผนภูมิ

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

คุณสร้างนโยบายการแจ้งเตือนตามเมตริก Realtime Database ได้ ทําตามขั้นตอนด้านล่างเพื่อสร้างนโยบายการแจ้งเตือนที่จะส่งอีเมลถึงคุณเมื่อเมตริก Realtime Database ที่เฉพาะเจาะจงถึงเกณฑ์ที่กำหนด

ก่อนดําเนินการต่อ โปรดตรวจสอบว่าโปรเจ็กต์ของคุณเป็นส่วนหนึ่งของเวิร์กสเปซการตรวจสอบระบบคลาวด์

  1. ในหน้าการตรวจสอบระบบคลาวด์ ให้เปิดพื้นที่ทํางาน แล้วไปที่หน้าการแจ้งเตือน

    ไปที่หน้าสร้างนโยบายการแจ้งเตือนใหม่

  2. คลิกสร้างนโยบาย

  3. ป้อนชื่อนโยบายการแจ้งเตือน

  4. เพิ่มเงื่อนไขการแจ้งเตือนตามเมตริก Realtime Database รายการใดรายการหนึ่ง คลิกเพิ่มเงื่อนไข

  5. เลือกเป้าหมาย ในช่องค้นหาประเภททรัพยากรและเมตริก ให้ป้อน Realtime Database จากเมนูแบบเลื่อนลงที่ระบบสร้างขึ้นโดยอัตโนมัติ ให้เลือกเมตริก Realtime Database รายการใดรายการหนึ่ง

  6. ในส่วนทริกเกอร์นโยบาย ให้ใช้ช่องแบบเลื่อนลงเพื่อกำหนดเงื่อนไขการแจ้งเตือน

  7. เพิ่มช่องทางการแจ้งเตือนลงในนโยบายการแจ้งเตือน ในส่วนการแจ้งเตือน ให้คลิกเพิ่มช่องทางการแจ้งเตือน เลือกอีเมลจากเมนูแบบเลื่อนลง

  8. ป้อนอีเมลในช่องอีเมล คลิกเพิ่ม

  9. (ไม่บังคับ) กรอกข้อมูลในช่องเอกสารประกอบเพื่อรวมข้อมูลเพิ่มเติมในอีเมลแจ้งเตือน

  10. คลิกบันทึก

หากการใช้งาน Realtime Database เกินเกณฑ์ที่กำหนดไว้ คุณจะได้รับการแจ้งเตือนทางอีเมล

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

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