การตรวจสอบ Genkit: การแก้ปัญหา

ฉันไม่เห็นร่องรอยและ/หรือเมตริกในการตรวจสอบ Genkit ของ Firebase

  1. ตรวจสอบว่าได้เปิดใช้ API ต่อไปนี้สําหรับโปรเจ็กต์ GCP พื้นฐานแล้ว
  2. ตรวจสอบว่าบทบาทต่อไปนี้มีผลกับบัญชีบริการที่เรียกใช้โค้ด (หรือบัญชีบริการที่กำหนดค่าไว้เป็นส่วนหนึ่งของตัวเลือกปลั๊กอิน) ใน Cloud IAM
    • Monitoring Metric Writer (roles/monitoring.metricWriter)
    • Cloud Trace Agent (roles/cloudtrace.agent)
    • โปรแกรมบันทึก (roles/logging.logWriter)
  3. ตรวจสอบบันทึกของแอปพลิเคชันเพื่อหาข้อผิดพลาดในการเขียนไปยัง Cloud Logging, Cloud Trace และ/หรือ Cloud Monitoring ในโครงสร้างพื้นฐาน GCP เช่น Firebase, Functions และ Cloud Run แม้ว่าจะมีการกำหนดค่าการวัดผลไม่ถูกต้อง แต่ Cloud Logging Agent จะนำเข้าบันทึกไปยัง stdout/stderr โดยอัตโนมัติ ซึ่งจะช่วยให้คุณวินิจฉัยปัญหาได้ในคอนโซลการบันทึกในระบบคลาวด์

  4. แก้ไขข้อบกพร่องในเครื่อง

    เปิดใช้การส่งออกสำหรับนักพัฒนาซอฟต์แวร์

    enableFirebaseTelemetry({
      forceDevExport: true
    });
    

    หากต้องการทดสอบด้วยข้อมูลเข้าสู่ระบบของผู้ใช้ส่วนบุคคล ให้ใช้ [gcloud CLI] เพื่อตรวจสอบสิทธิ์กับ Google Cloud ซึ่งจะช่วยวินิจฉัย API ที่เปิดใช้/ปิดใช้ แต่ไม่ทดสอบการเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน gcloud auth

    หรือคุณจะแอบอ้างเป็นบัญชีบริการเพื่อทดสอบการเข้าถึงเสมือนจริงก็ได้ คุณต้องมีบทบาท IAM roles/iam. serviceAccountTokenCreator กับบัญชีผู้ใช้เพื่อแอบอ้างเป็นบัญชีบริการ

    gcloud auth application-default login --impersonate-service-account <SERVICE_ACCT_EMAIL>
    

    ดูข้อมูลเพิ่มเติมในเอกสารประกอบของ ADC

ความน่าเชื่อถือในการอัปโหลดข้อมูลการวัดประสิทธิภาพใน Firebase Functions / Cloud Run

เมื่อโฮสต์ Genkit ใน Google Cloud Run (รวมถึง Cloud Functions for Firebase) การอัปโหลดข้อมูลการวัดอาจมีความน่าเชื่อถือน้อยลงเนื่องจากคอนเทนเนอร์จะเปลี่ยนเป็นสถานะวงจร "ไม่ได้ใช้งาน" หากความน่าเชื่อถือที่สูงขึ้นสำคัญกับคุณ ให้ลองเปลี่ยนการจัดสรร CPU เป็นจัดสรรเสมอในคอนโซล Google Cloud