เริ่มต้นใช้งาน Performance Monitoring สำหรับแพลตฟอร์ม Apple

ก่อนเริ่มต้น

หากยังไม่ได้เพิ่ม ให้เพิ่ม Firebase ลงในโปรเจ็กต์ Apple

ขั้นตอนที่ 1: เพิ่ม Performance Monitoring ลงในแอป

หลังจากเพิ่ม Performance Monitoring SDK แล้ว Firebase จะเริ่มรวบรวมข้อมูลโดยอัตโนมัติ สําหรับการแสดงผลหน้าจอของแอป ข้อมูล ที่เกี่ยวข้องกับวงจรของแอป (เช่น เวลาเริ่มต้นของแอป) และ ข้อมูลสําหรับคําขอเครือข่าย HTTP/S

ใช้ Swift Package Manager เพื่อติดตั้งและจัดการทรัพยากร Dependency ของ Firebase

  1. ใน Xcode ขณะที่โปรเจ็กต์แอปเปิดอยู่ ให้ไปที่ไฟล์ > เพิ่มแพ็กเกจ
  2. เมื่อได้รับข้อความแจ้ง ให้เพิ่มที่เก็บ SDK ของแพลตฟอร์ม Apple ของ Firebase โดยทำดังนี้
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. เลือกPerformance Monitoringคลัง
  5. เพิ่มแฟล็ก -ObjC ลงในส่วนแฟล็ก Linker อื่นๆ ของการตั้งค่าบิลด์ของเป้าหมาย
  6. เมื่อเสร็จแล้ว Xcode จะเริ่มแก้ไขและดาวน์โหลดการขึ้นต่อกันในเบื้องหลังโดยอัตโนมัติ

จากนั้นกําหนดค่าโมดูล Firebase โดยทําดังนี้

  1. นําเข้าโมดูล FirebaseCore ใน UIApplicationDelegate รวมถึงโมดูล Firebase อื่นๆ ที่ตัวแทนแอปของคุณใช้ เช่น หากต้องการใช้ Cloud Firestore และ Authentication ให้ทำดังนี้

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. กำหนดค่า FirebaseApp อินสแตนซ์ที่แชร์ใน เมธอด application(_:didFinishLaunchingWithOptions:) ของตัวแทนแอป

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. หากใช้ SwiftUI คุณต้องสร้างตัวแทนแอปพลิเคชันและแนบเข้ากับ โครงสร้าง App ผ่าน UIApplicationDelegateAdaptor หรือ NSApplicationDelegateAdaptor นอกจากนี้ คุณต้องปิดใช้การสลับแทนของตัวแทนแอปด้วย ดูข้อมูลเพิ่มเติมได้ที่วิธีการสำหรับ SwiftUI

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. คอมไพล์แอปอีกครั้ง

ขั้นตอนที่ 2: สร้างเหตุการณ์ด้านประสิทธิภาพเพื่อแสดงข้อมูลเริ่มต้น

Firebase จะเริ่มประมวลผลเหตุการณ์เมื่อคุณเพิ่ม SDK ลงในแอปเรียบร้อยแล้ว หากยังคงพัฒนาในเครื่อง ให้โต้ตอบกับแอปเพื่อสร้างเหตุการณ์สำหรับการเก็บรวบรวมข้อมูลและการประมวลผลข้อมูลเริ่มต้น

  1. พัฒนาแอปต่อโดยใช้โปรแกรมจำลองหรืออุปกรณ์ทดสอบ

  2. สร้างเหตุการณ์โดยการสลับแอปไปมาระหว่างพื้นหลังและเบื้องหน้าหลายครั้ง โต้ตอบกับแอปโดยการไปยังส่วนต่างๆ ของหน้าจอ และ/หรือทริกเกอร์คำขอเครือข่าย

  3. ไปที่แดชบอร์ดประสิทธิภาพของคอนโซล Firebase คุณควรเห็นข้อมูลเริ่มต้นแสดงภายใน ไม่กี่นาที

    หากไม่เห็นข้อมูลเริ่มต้น ให้ดูเคล็ดลับในการแก้ปัญหา

ขั้นตอนที่ 3: (ไม่บังคับ) ดูข้อความบันทึกสำหรับเหตุการณ์ด้านประสิทธิภาพ

  1. เปิดใช้การบันทึกการแก้ไขข้อบกพร่องโดยทำดังนี้

    1. ใน Xcode (ขั้นต่ำ v26.2) ให้เลือกผลิตภัณฑ์ > รูปแบบ > แก้ไขรูปแบบ
    2. เลือกเรียกใช้จากเมนูด้านซ้าย แล้วเลือกแท็บอาร์กิวเมนต์
    3. ในส่วนอาร์กิวเมนต์ที่ส่งเมื่อตอนเริ่ม ให้เพิ่ม -FIRDebugEnabled
  2. ตรวจสอบข้อความบันทึกเพื่อดูข้อความแสดงข้อผิดพลาด

  3. Performance Monitoring จะติดแท็กข้อความบันทึกด้วย Firebase/Performance เพื่อให้คุณกรองข้อความบันทึกได้

  4. ตรวจสอบบันทึกประเภทต่อไปนี้ซึ่งบ่งชี้ว่า Performance Monitoring กำลังบันทึกเหตุการณ์ด้านประสิทธิภาพ

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. คลิก URL เพื่อดูข้อมูลในคอนโซล Firebase ระบบอาจใช้เวลาสักครู่ในการอัปเดตข้อมูลในแดชบอร์ด

หากแอปไม่ได้บันทึกเหตุการณ์ด้านประสิทธิภาพ โปรดดูเคล็ดลับ การแก้ปัญหา

ขั้นตอนที่ 4: (ไม่บังคับ) เพิ่มการตรวจสอบที่กำหนดเองสำหรับโค้ดที่เฉพาะเจาะจง

หากต้องการตรวจสอบข้อมูลประสิทธิภาพที่เชื่อมโยงกับโค้ดที่เฉพาะเจาะจงในแอป คุณสามารถ วัดผลการติดตามโค้ดที่กำหนดเอง

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

ในโค้ด คุณจะกำหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กำหนดเอง (และเพิ่มเมตริกที่กำหนดเองที่ต้องการ) โดยใช้ API ที่ SDK ของ Performance Monitoring มีให้

ไปที่เพิ่มการตรวจสอบโค้ดที่เฉพาะเจาะจง เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์เหล่านี้และวิธีเพิ่มลงในแอป

ขั้นตอนที่ 5: นำแอปไปใช้งานแล้วตรวจสอบผลลัพธ์

หลังจากตรวจสอบ Performance Monitoring โดยใช้โปรแกรมจำลอง Xcode และอุปกรณ์ทดสอบอย่างน้อย 1 เครื่องแล้ว คุณสามารถติดตั้งใช้งานแอปเวอร์ชันที่อัปเดตแล้วแก่ผู้ใช้ได้

คุณสามารถตรวจสอบข้อมูลประสิทธิภาพได้ในแดชบอร์ดประสิทธิภาพ ของคอนโซล Firebase

ปัญหาที่ทราบ

  • Performance Monitoring มีปัญหาด้านความเข้ากันได้ที่ทราบกับ GTMSQLite เราขอแนะนำว่าไม่ควร ใช้ Performance Monitoring กับแอปที่ใช้ GTMSQLite
  • การแลกเปลี่ยนเมธอดหลังจากเรียกใช้ FirebaseApp.configure() อาจรบกวน SDK ของ Performance Monitoring
  • ปัญหาที่ทราบเกี่ยวกับโปรแกรมจำลอง iOS 8.0-8.2 ทำให้ Performance Monitoring ไม่สามารถ บันทึกเหตุการณ์ด้านประสิทธิภาพได้ ปัญหาเหล่านี้ได้รับการแก้ไขแล้วในโปรแกรมจำลอง iOS 8.3 และเวอร์ชันที่ใหม่กว่า
  • การเชื่อมต่อที่สร้างขึ้นโดยใช้ backgroundSessionConfiguration ของ NSURLSession จะใช้เวลานานกว่าที่คาดไว้ การเชื่อมต่อเหล่านี้จะ ดำเนินการนอกกระบวนการ และเวลาจะแสดงเหตุการณ์การเรียกกลับในกระบวนการ

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