শুরু করার আগে
যদি আগে থেকে না করে থাকেন, তাহলে আপনার অ্যাপল প্রজেক্টে ফায়ারবেস যোগ করুন ।
ধাপ ১ : আপনার অ্যাপে Performance Monitoring যোগ করুন
Performance Monitoring SDK যোগ করার পর, Firebase স্বয়ংক্রিয়ভাবে আপনার অ্যাপের স্ক্রিন রেন্ডারিং-এর ডেটা, আপনার অ্যাপের লাইফসাইকেল সম্পর্কিত ডেটা (যেমন অ্যাপ চালু হওয়ার সময় ), এবং HTTP/S নেটওয়ার্ক অনুরোধের ডেটা সংগ্রহ করা শুরু করে।
ফায়ারবেস ডিপেন্ডেন্সিগুলো ইনস্টল ও পরিচালনা করতে সুইফট প্যাকেজ ম্যানেজার ব্যবহার করুন।
- Xcode-এ আপনার অ্যাপ প্রজেক্টটি খুলে, File > Add Packages- এ যান।
- অনুরোধ করা হলে, Firebase Apple প্ল্যাটফর্ম SDK রিপোজিটরিটি যোগ করুন:
- Performance Monitoring লাইব্রেরিটি নির্বাচন করুন।
- আপনার টার্গেটের বিল্ড সেটিংসের ' Other Linker Flags' সেকশনে
-ObjCফ্ল্যাগটি যোগ করুন। - কাজ শেষ হলে, Xcode স্বয়ংক্রিয়ভাবে ব্যাকগ্রাউন্ডে আপনার ডিপেন্ডেন্সিগুলো রিজলভ ও ডাউনলোড করা শুরু করবে।
https://github.com/firebase/firebase-ios-sdk.git
এরপর, ফায়ারবেস মডিউলটি কনফিগার করুন:
- আপনার
UIApplicationDelegateএFirebaseCoreমডিউলটি ইম্পোর্ট করুন, সেইসাথে আপনার অ্যাপ ডেলিগেট দ্বারা ব্যবহৃত অন্য যেকোনো Firebase মডিউলও ইম্পোর্ট করুন। উদাহরণস্বরূপ, Cloud Firestore এবং Authentication ব্যবহার করতে:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
সুইফট
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
উদ্দেশ্য-সি
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- আপনার অ্যাপ ডেলিগেটের
application(_:didFinishLaunchingWithOptions:)মেথডে একটিFirebaseAppশেয়ার্ড ইনস্ট্যান্স কনফিগার করুন:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
সুইফট
// Use Firebase library to configure APIs FirebaseApp.configure()
উদ্দেশ্য-সি
// Use Firebase library to configure APIs [FIRApp configure];
- আপনি যদি SwiftUI ব্যবহার করেন, তাহলে আপনাকে অবশ্যই একটি অ্যাপ্লিকেশন ডেলিগেট তৈরি করতে হবে এবং
UIApplicationDelegateAdaptorবাNSApplicationDelegateAdaptorমাধ্যমে সেটিকে আপনারAppstruct-এর সাথে সংযুক্ত করতে হবে। আপনাকে অবশ্যই অ্যাপ ডেলিগেট সুইজলিং নিষ্ক্রিয় করতে হবে। আরও তথ্যের জন্য, SwiftUI নির্দেশাবলী দেখুন।SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
আপনার অ্যাপটি পুনরায় কম্পাইল করুন।
ধাপ ২ : প্রাথমিক ডেটা প্রদর্শনের জন্য পারফরম্যান্স ইভেন্ট তৈরি করুন
আপনার অ্যাপে সফলভাবে SDK যোগ করার পর Firebase ইভেন্টগুলো প্রসেস করা শুরু করে। আপনি যদি এখনও স্থানীয়ভাবে ডেভেলপ করেন, তাহলে প্রাথমিক ডেটা সংগ্রহ ও প্রসেসিংয়ের জন্য ইভেন্ট তৈরি করতে আপনার অ্যাপটি ব্যবহার করুন।
সিমুলেটর বা টেস্ট ডিভাইস ব্যবহার করে আপনার অ্যাপটির উন্নয়ন চালিয়ে যান।
আপনার অ্যাপটিকে একাধিকবার ব্যাকগ্রাউন্ড ও ফোরগ্রাউন্ডে পরিবর্তন করে, বিভিন্ন স্ক্রিনে নেভিগেট করার মাধ্যমে অ্যাপের সাথে ইন্টারঅ্যাক্ট করে, এবং/অথবা নেটওয়ার্ক রিকোয়েস্ট ট্রিগার করে ইভেন্ট তৈরি করুন।
Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে যান। কয়েক মিনিটের মধ্যেই আপনার প্রাথমিক ডেটা প্রদর্শিত হবে।
যদি আপনি আপনার প্রাথমিক ডেটা দেখতে না পান, তাহলে সমস্যা সমাধানের পরামর্শগুলো পর্যালোচনা করুন।
ধাপ ৩ : (ঐচ্ছিক) পারফরম্যান্স ইভেন্টের জন্য লগ বার্তাগুলো দেখুন
নিম্নলিখিতভাবে ডিবাগ লগিং সক্রিয় করুন:
- Xcode-এ (সর্বনিম্ন সংস্করণ ১৬.২), Product > Scheme > Edit scheme নির্বাচন করুন।
- বাম দিকের মেনু থেকে রান (Run) নির্বাচন করুন, তারপর আর্গুমেন্টস (Arguments) ট্যাবটি নির্বাচন করুন।
- "Arguments Passed on Launch" বিভাগে,
-FIRDebugEnabled" যোগ করুন।
কোনো ত্রুটির বার্তা আছে কিনা তা জানতে আপনার লগ বার্তাগুলো দেখুন।
Performance Monitoring তার লগ মেসেজগুলোকে
Firebase/Performanceদিয়ে ট্যাগ করে, যাতে আপনি আপনার লগ মেসেজগুলো ফিল্টার করতে পারেন।নিম্নলিখিত ধরণের লগগুলি পরীক্ষা করুন, যা নির্দেশ করে যে Performance Monitoring পারফরম্যান্স ইভেন্টগুলি লগ করছে:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL -
Logging network request trace: URL
-
ফায়ারবেস কনসোলে আপনার ডেটা দেখতে ইউআরএল-টিতে ক্লিক করুন। ড্যাশবোর্ডে ডেটা আপডেট হতে কয়েক মুহূর্ত সময় লাগতে পারে।
আপনার অ্যাপ যদি পারফরম্যান্স ইভেন্ট লগ না করে, তাহলে সমস্যা সমাধানের টিপসগুলো পর্যালোচনা করুন।
ধাপ ৪ : (ঐচ্ছিক) নির্দিষ্ট কোডের জন্য কাস্টম মনিটরিং যোগ করুন
আপনার অ্যাপের নির্দিষ্ট কোডের সাথে সম্পর্কিত পারফরম্যান্স ডেটা নিরীক্ষণ করতে, আপনি কাস্টম কোড ট্রেস ইন্সট্রুমেন্ট করতে পারেন।
কাস্টম কোড ট্রেসের মাধ্যমে, আপনি পরিমাপ করতে পারেন আপনার অ্যাপের কোনো নির্দিষ্ট কাজ বা একাধিক কাজ সম্পন্ন করতে কতক্ষণ সময় লাগে, যেমন—একগুচ্ছ ছবি লোড করা বা আপনার ডাটাবেস থেকে তথ্য সংগ্রহ করা। কাস্টম কোড ট্রেসের ডিফল্ট মেট্রিক হলো এর সময়কাল, তবে আপনি ক্যাশ হিট এবং মেমরি ওয়ার্নিং-এর মতো কাস্টম মেট্রিকও যোগ করতে পারেন।
আপনার কোডে, Performance Monitoring SDK দ্বারা প্রদত্ত API ব্যবহার করে আপনি একটি কাস্টম কোড ট্রেসের শুরু এবং শেষ নির্ধারণ করেন (এবং আপনার পছন্দসই যেকোনো কাস্টম মেট্রিক যোগ করেন)।
এই বৈশিষ্ট্যগুলি সম্পর্কে আরও জানতে এবং আপনার অ্যাপে সেগুলি কীভাবে যুক্ত করবেন তা জানতে, 'নির্দিষ্ট কোডের জন্য মনিটরিং যোগ করুন' (Add monitoring for specific code) অংশটি দেখুন।
ধাপ ৫ : আপনার অ্যাপটি স্থাপন করুন এবং তারপর ফলাফল পর্যালোচনা করুন।
Xcode সিমুলেটর এবং এক বা একাধিক টেস্ট ডিভাইস ব্যবহার করে Performance Monitoring যাচাই করার পর, আপনি আপনার অ্যাপের আপডেট করা সংস্করণটি ব্যবহারকারীদের কাছে ডেপ্লয় করতে পারেন।
আপনি Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে পারফরম্যান্স ডেটা নিরীক্ষণ করতে পারেন।
পরিচিত সমস্যা
- Performance Monitoring সাথে GTMSQLite-এর কিছু পরিচিত সামঞ্জস্যগত সমস্যা রয়েছে। আমরা পরামর্শ দিই যে, যেসব অ্যাপ GTMSQLite ব্যবহার করে, সেগুলোর সাথে Performance Monitoring ব্যবহার করবেন না।
-
FirebaseApp.configure()কল করার পরে মেথড সুইজলিং করলে তা Performance Monitoring SDK-এর কাজে ব্যাঘাত ঘটাতে পারে। - iOS 8.0-8.2 সিমুলেটরের কিছু জ্ঞাত সমস্যার কারণে Performance Monitoring পারফরম্যান্স ইভেন্ট ক্যাপচার করতে পারত না। এই সমস্যাগুলো iOS 8.3 সিমুলেটর এবং পরবর্তী সংস্করণগুলোতে সমাধান করা হয়েছে।
- NSURLSession-এর
backgroundSessionConfigurationব্যবহার করে স্থাপিত সংযোগগুলিতে প্রত্যাশার চেয়ে বেশি সময় লাগবে। এই সংযোগগুলি আউট-অফ-প্রসেস সম্পাদিত হয় এবং এর সময় ইন-প্রসেস কলব্যাক ইভেন্টগুলিকে প্রতিফলিত করে।
পরবর্তী পদক্ষেপ
গিটহাবে থাকা Performance Monitoring আইওএস কোড স্যাম্পলটি পর্যালোচনা করুন এবং চালান।
Performance Monitoring দ্বারা স্বয়ংক্রিয়ভাবে সংগৃহীত ডেটা সম্পর্কে আরও জানুন:
- আপনার অ্যাপের জীবনচক্র সম্পর্কিত ডেটা, যেমন অ্যাপ চালু হওয়ার সময়
- আপনার অ্যাপে স্ক্রিন রেন্ডারিংয়ের জন্য ডেটা
- আপনার অ্যাপ দ্বারা জারি করা HTTP/S নেটওয়ার্ক অনুরোধের ডেটা
Firebase কনসোলে আপনার পারফরম্যান্স ডেটা দেখুন, ট্র্যাক করুন এবং ফিল্টার করুন ।
কাস্টম কোড ট্রেস ইন্সট্রুমেন্ট করার মাধ্যমে আপনার অ্যাপের নির্দিষ্ট টাস্ক বা ওয়ার্কফ্লো পর্যবেক্ষণের ব্যবস্থা যুক্ত করুন।