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

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

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

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

คอนโซล Firebase

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

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

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

Realtime Database
แดชบอร์ดการตรวจสอบกฎในคอนโซล Firebase

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

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

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

Cloud Monitoring

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

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

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

network/sent_payload_bytes_count. เมตริกนี้แสดงขนาดของ ข้อมูลที่ขอผ่านการดำเนินการฐานข้อมูล (รวมถึง get, การค้นหา, การเขียน การอัปเดต Listener แบบเรียลไทม์ และการออกอากาศ) ไม่รวมการเชื่อมต่อใดๆ โอเวอร์เฮด (โปรโตคอลหรือการเข้ารหัส) จำนวน "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. เปิดหน้า Cloud Monitoring

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

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

  3. คลิกเพิ่ม หลังจากสร้างพื้นที่ทำงานแล้ว หน้า Cloud Monitoring จะเปิดขึ้น

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

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

ก่อนดำเนินการต่อ โปรดตรวจสอบว่าโปรเจ็กต์เป็นส่วนหนึ่งของ พื้นที่ทำงานของ Cloud Monitoring

  1. ในหน้า Cloud Monitoring ให้เปิดพื้นที่ทำงานและไปที่ส่วน แดชบอร์ด

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

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

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

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

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

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

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

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

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

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

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

ก่อนดำเนินการต่อ โปรดตรวจสอบว่าโปรเจ็กต์เป็นส่วนหนึ่งของ พื้นที่ทำงานของ Cloud Monitoring

  1. ในหน้า Cloud Monitoring ให้เปิดพื้นที่ทำงานและไปที่ หน้าการแจ้งเตือน

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

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

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

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

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

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

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

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

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

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

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

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

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