শুরু করার আগে
আপনি আগে থেকে না করে থাকলে, আপনার Android প্রোজেক্টে Firebase যোগ করুন।
ধাপ ১: আপনার অ্যাপে Performance Monitoring SDK যোগ করুন
Performance Monitoring SDK যোগ করার পরে, Firebase অটোমেটিক আপনার অ্যাপের স্ক্রিন রেন্ডারিং এবং অ্যাপের লাইফসাইকেল (যেমন, অ্যাপ শুরু হওয়ার সময়) সম্পর্কিত ডেটা সংগ্রহ করা শুরু করে। Firebase-কে নেটওয়ার্ক অনুরোধ মনিটর করার অনুমতি দিতে, আপনাকে Performance Monitoring Gradle প্লাগ-ইনও (পরবর্তী ধাপ) যোগ করতে হবে।
আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইলে (সাধারণত
<project>/<app-module>/build.gradle.ktsবা<project>/<app-module>/build.gradle), Android-এর জন্য Performance Monitoring লাইব্রেরির ডিপেন্ডেন্সি যোগ করুন। লাইব্রেরি ভার্সনিং নিয়ন্ত্রণ করতে আমরা Firebase Android BoM ব্যবহার করার সাজেশন দিই।dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:35.0.1")) // Add the dependency for the Performance Monitoring library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf") }
Firebase Android BoM ব্যবহার করার মাধ্যমে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির মানানসই ভার্সন ব্যবহার করবে।
(বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি ডিপেন্ডেন্সি যোগ করুন
আপনি যদি Firebase BoM ব্যবহার না করার সিদ্ধান্ত নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি ভার্সন এর ডিপেন্ডেন্সি লাইনে উল্লেখ করতে হবে।
মনে রাখবেন, আপনার অ্যাপে একাধিক Firebase লাইব্রেরি ব্যবহার করলে, লাইব্রেরি ভার্সন ম্যানেজ করার জন্য আমরা BoM ব্যবহার করার জন্য বিশেষভাবে সাজেস্ট করি, যা নিশ্চিত করে যে সব ভার্সন মানানসই।
dependencies { // Add the dependency for the Performance Monitoring library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf:23.0.1") }
আপনার অ্যাপ রিকম্পাইল করুন।
ধাপ ২: আপনার অ্যাপে Performance Monitoring Gradle প্লাগ-ইন যোগ করুন
আপনি Performance Monitoring Gradle প্লাগ-ইন যোগ করার পরে, Firebase অটোমেটিক HTTP/S নেটওয়ার্ক অনুরোধ-এর জন্য ডেটা সংগ্রহ করা শুরু করে। এছাড়াও, প্লাগ-ইন আপনাকে @AddTrace অ্যানোটেশন ব্যবহার করে কাস্টম কোড ট্রেস ইনস্ট্রুমেন্ট করতে দেয়।
আপনার রুট-লেভেল (প্রোজেক্ট-লেভেল) Gradle ফাইলে (
<project>/build.gradle.ktsঅথবা<project>/build.gradle), Performance Monitoring Gradle প্লাগ-ইন যোগ করুন:Kotlin
plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id("com.android.application") version "7.3.0" apply false // Make sure that you have the Google services Gradle plugin dependency id("com.google.gms.google-services") version "4.5.0" apply false // Add the dependency for the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") version "2.0.2" apply false }
Groovy
plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id 'com.android.application' version '7.3.0' apply false // Make sure that you have the Google services Gradle plugin dependency id 'com.google.gms.google-services' version '4.5.0' apply false // Add the dependency for the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' version '2.0.2' apply false }
আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইলে (সাধারণত
<project>/<app-module>/build.gradle.ktsবা<project>/<app-module>/build.gradle), Performance Monitoring Gradle প্লাগ-ইন যোগ করুন:Kotlin
plugins { id("com.android.application") // Make sure that you have the Google services Gradle plugin id("com.google.gms.google-services") // Add the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") ... }
Groovy
plugins { id 'com.android.application' // Make sure that you have the Google services Gradle plugin id 'com.google.gms.google-services' // Add the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' ... }
আপনার অ্যাপ রিকম্পাইল করুন।
ধাপ ৩: প্রাথমিক ডেটা দেখানোর জন্য পারফর্ম্যান্স ইভেন্ট জেনারেট করুন
আপনার অ্যাপে SDK যোগ করার পর Firebase ইভেন্ট প্রসেস করা শুরু করে। আপনি যদি এখনও লোকালভাবে ডেভেলপ করেন, তাহলে প্রাথমিক ডেটা সংগ্রহ ও প্রসেস করার জন্য ইভেন্ট তৈরি করতে আপনার অ্যাপের সাথে ইন্টার্যাক্ট করুন।
ব্যাকগ্রাউন্ড ও ফোরগ্রাউন্ডের মধ্যে আপনার অ্যাপকে বেশ কয়েকবার পাল্টে, স্ক্রিন জুড়ে নেভিগেট করে আপনার অ্যাপের সাথে ইন্টার্যাক্ট করে এবং/অথবা নেটওয়ার্ক অনুরোধ ট্রিগার করে ইভেন্ট জেনারেট করুন।
Firebase কনসোলের পারফর্ম্যান্স ড্যাশবোর্ডে যান। কয়েক মিনিটের মধ্যে আপনার প্রাথমিক ডেটা ডিসপ্লে দেখতে পাবেন।
আপনার প্রাথমিক ডেটা দেখতে না পেলে, সমস্যার সমাধানকরণ পরামর্শ পর্যালোচনা করুন।
ধাপ ৪: (ঐচ্ছিক) পারফর্ম্যান্স ইভেন্টের জন্য লগ মেসেজ দেখুন
বিল্ড করার সময় Performance Monitoring-এর জন্য ডিবাগ লগিং চালু করতে, আপনার অ্যাপের
AndroidManifest.xmlফাইলে<meta-data>এলিমেন্ট যোগ করুন, যেমন:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>কোনও ত্রুটি মেসেজ আছে কিনা তা জানতে আপনার লগ মেসেজ চেক করুন।
Performance Monitoring,
FirebasePerformance-এর সাথে এর লগ মেসেজ ট্যাগ করে। logcat ফিল্টারিং ব্যবহার করে, আপনি নিম্নলিখিত কমান্ড রান করার মাধ্যমে বিশেষভাবে ডিউরেশন ট্রেস এবং HTTP/S নেটওয়ার্ক রিকোয়েস্ট লগিং দেখতে পারবেন:adb logcat -s FirebasePerformance
নিম্নলিখিত ধরনের লগ চেক করুন যা থেকে বোঝা যায় যে Performance Monitoring পারফর্ম্যান্স ইভেন্ট লগ করছে:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URLLogging network request trace: URL
Firebase কনসোলে আপনার ডেটা দেখতে URL-এ ক্লিক করুন। ড্যাশবোর্ডে ডেটা আপডেট হতে কিছুক্ষণ সময় লাগতে পারে।
আপনার অ্যাপ পারফর্ম্যান্স ইভেন্ট লগ না করলে, সমস্যার সমাধানকরণ পরামর্শ পর্যালোচনা করুন।
ধাপ ৫: (ঐচ্ছিক) নির্দিষ্ট কোডের জন্য কাস্টম মনিটরিং যোগ করুন
আপনার অ্যাপে নির্দিষ্ট কোডের সাথে সম্পর্কিত পারফর্ম্যান্স ডেটা মনিটর করতে, আপনি কাস্টম কোড ট্রেস ইন্সট্রুমেন্ট করতে পারেন।
কাস্টম কোড ট্রেসের মাধ্যমে, আপনার অ্যাপের কোনও নির্দিষ্ট টাস্ক বা টাস্কের সেট সম্পূর্ণ করতে কত সময় লাগে তা পরিমাপ করতে পারবেন, যেমন, ছবির সেট লোড করা বা আপনার ডেটাবেস কোয়েরি করা। কাস্টম কোড ট্রেসের ডিফল্ট মেট্রিক হল এর সময়সীমা, তবে আপনি কাস্টম মেট্রিকও যোগ করতে পারেন, যেমন ক্যাশে হিট এবং মেমরি সংক্রান্ত সতর্কতা।
আপনার কোডে, আপনি Performance Monitoring SDK-এর মাধ্যমে প্রদান করা API ব্যবহার করে কাস্টম কোড ট্রেসের শুরু এবং শেষ (এবং যেকোনও পছন্দসই কাস্টম মেট্রিক যোগ করুন) নির্ধারণ করেন। Android অ্যাপের ক্ষেত্রে, আপনি @AddTrace অ্যানোটেশন ব্যবহার করে নির্দিষ্ট পদ্ধতির সময়সীমাও মনিটর করতে পারবেন।
এইসব ফিচার সম্পর্কে এবং কীভাবে আপনার অ্যাপে সেগুলি যোগ করবেন সেই বিষয়ে আরও জানতে নির্দিষ্ট কোডের জন্য মনিটরিং যোগ করুন লিঙ্কে যান।
ধাপ ৬: আপনার অ্যাপ ডিপ্লয় করুন, তারপর ফলাফল পর্যালোচনা করুন
এক বা একাধিক টেস্ট ডিভাইস ব্যবহার করে Performance Monitoring যাচাই করার পরে, আপনি আপনার অ্যাপের আপডেট করা ভার্সন ব্যবহারকারীদের জন্য ডিপ্লয় করতে পারবেন।
আপনি Firebase কনসোলের পারফর্ম্যান্স ড্যাশবোর্ড থেকে পারফর্ম্যান্স ডেটা মনিটর করতে পারবেন।
পরিচিত সমস্যা
Performance Monitoring Gradle প্লাগ-ইন v1.1.0-এর কারণে Guava ডিপেন্ডেন্সিতে অমিল হতে পারে, যার ফলে নিম্নলিখিত সমস্যা দেখা দিতে পারে:
Error:Execution failed for task ':app:packageInstantRunResourcesDebug'. > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
আপনি এই সমস্যা দেখতে পেলে, এগুলির মধ্যে যেকোনও একটি করতে পারেন:
Performance Monitoring প্লাগ-ইন v1.1.1 বা তার পরবর্তী ভার্সনে আপগ্রেড করুন (সবচেয়ে সাম্প্রতিক ভার্সন হল v2.0.2)।
আপনার রুট-লেভেল (প্রোজেক্ট-লেভেল) Gradle ফাইলে (
<project>/build.gradle.ktsবা<project>/build.gradle) Performance Monitoring প্লাগ-ইন ডিপেন্ডেন্সি লাইনটি নিম্নলিখিতভাবে পরিবর্তন করুন:Kotlin
buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath("com.google.firebase:perf-plugin:1.1.0") { exclude(group = "com.google.guava", module = "guava-jdk5") } } }
Groovy
buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath('com.google.firebase:perf-plugin:1.1.0') { exclude group: 'com.google.guava', module: 'guava-jdk5' } } }
HTTP কন্টেন্ট-লেংথ হেডারে সেট করা ভ্যালুর উপর ভিত্তি করে HTTP নেটওয়ার্ক অনুরোধের জন্য Performance Monitoring মোট পেলোড সাইজ রিপোর্ট করে। এই মান সবসময় সঠিক নাও হতে পারে।
Performance Monitoring শুধুমাত্র মাল্টি-প্রসেস Android অ্যাপের মূল প্রসেসকে সাপোর্ট করে।
পরবর্তী ধাপ
Performance Monitoring GitHub-এ Android কোডের স্যাম্পেল পর্যালোচনা করে রান করুন।
Performance Monitoring-এর মাধ্যমে অটোমেটিক সংগ্রহ করা ডেটা সম্পর্কে আরও জানুন:
- আপনার অ্যাপের লাইফসাইকেল সম্পর্কিত ডেটা, যেমন অ্যাপ শুরু হওয়ার সময়
- আপনার অ্যাপে স্ক্রিন রেন্ডারিং সংক্রান্ত ডেটা
- আপনার অ্যাপের মাধ্যমে ইস্যু করা HTTP/S নেটওয়ার্ক অনুরোধের ডেটা
Firebase কনসোলে আপনার পারফর্ম্যান্স ডেটা দেখুন, ট্র্যাক ও ফিল্টার করুন।
কাস্টম কোড ট্রেস ইন্সট্রুমেন্ট করার মাধ্যমে আপনার অ্যাপে নির্দিষ্ট টাস্ক বা ওয়ার্কফ্লোর জন্য মনিটরিং যোগ করুন।