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

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

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

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

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

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

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

จากนั้นกำหนดค่าโมดูล 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. กำหนดค่าอินสแตนซ์ที่แชร์ในเมธอดของผู้รับมอบสิทธิ์ของแอป:FirebaseAppapplication(_: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. ไปที่แดชบอร์ด Performance ของคอนโซล Firebase คุณควรเห็นข้อมูลเริ่มต้นแสดงภายในไม่กี่นาที

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

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

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

    1. ใน Xcode (เวอร์ชัน 26.2 ขึ้นไป) ให้เลือก Product > Scheme > Edit scheme
    2. เลือก Run จากเมนูด้านซ้าย แล้วเลือกแท็บ Arguments
    3. ในส่วน Arguments Passed on Launch ให้เพิ่ม -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 ที่ Performance Monitoring SDK มีให้

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

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

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

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

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

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

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