รายงานข้อผิดพลาด (รุ่นที่ 1)

การรายงานข้อผิดพลาดโดยอัตโนมัติ

คุณสามารถส่งข้อผิดพลาดจากฟังก์ชันไปยัง Error Reporting ได้ดังที่แสดงด้านล่าง

// These WILL be reported to Error Reporting
throw new Error('I failed you'); // Will cause a cold start if not caught

หากต้องการรายงานข้อผิดพลาดอย่างละเอียดมากขึ้น คุณสามารถใช้ Client Library ของ Error Reporting ได้

คุณสามารถดูข้อผิดพลาดที่รายงานใน Error Reporting ในคอนโซล Google Cloud ได้ นอกจากนี้ คุณยังดูข้อผิดพลาดที่รายงานจากฟังก์ชันใดฟังก์ชันหนึ่งได้เมื่อเลือกฟังก์ชันนั้นจากรายการฟังก์ชันใน Google Cloud Console

ข้อยกเว้นที่ไม่ได้จัดการซึ่งฟังก์ชันสร้างขึ้นจะปรากฏใน Error Reporting โปรดทราบว่าข้อยกเว้นที่ไม่ได้จัดการบางประเภท (เช่น ข้อยกเว้นที่เกิดขึ้นแบบไม่พร้อมกัน) จะทำให้เกิดการเริ่มต้นแบบเย็นเมื่อมีการเรียกใช้ฟังก์ชันในอนาคต ซึ่งจะเพิ่มระยะเวลาที่ฟังก์ชันใช้ในการทำงาน

การรายงานข้อผิดพลาดด้วยตนเอง

การนำเข้าทรัพยากร Dependency

หากต้องการรายงานข้อผิดพลาดไปยัง Error Reporting จากฟังก์ชัน ให้นำเข้าฟังก์ชัน error จาก Cloud Functions logger SDK ดังนี้

// All available logging functions
const {
  log,
  info,
  debug,
  warn,
  error,
  write,
} = require("firebase-functions/logger");

การส่งไปยัง Cloud Logging

ฟังก์ชัน error จาก Cloud Functions logger SDK จะรายงานข้อผิดพลาดไปยังทั้ง Cloud Logging และ Error Reporting หากต้องการรวมบริบทเพิ่มเติมจากข้อผิดพลาดเป็น ข้อมูลที่มีโครงสร้าง ให้ส่งออบเจ็กต์ข้อผิดพลาดเป็นอาร์กิวเมนต์ที่ 2 ดังนี้

 } catch (err) {
  // Attach an error object as the second argument
  error("Unable to read quote from Firestore, sending default instead",
      err);