Android এর জন্য পারফরম্যান্স মনিটরিং দিয়ে শুরু করুন

শুরু করার আগে

যদি আপনি ইতিমধ্যেই না করে থাকেন, তাহলে আপনার অ্যান্ড্রয়েড প্রজেক্টে Firebase যোগ করুন

ধাপ ১ : আপনার অ্যাপে Performance Monitoring SDK যোগ করুন

Performance Monitoring SDK যোগ করার পর, Firebase স্বয়ংক্রিয়ভাবে আপনার অ্যাপের স্ক্রিন রেন্ডারিং এবং আপনার অ্যাপের জীবনচক্রের সাথে সম্পর্কিত ডেটা (যেমন অ্যাপ শুরুর সময় ) সংগ্রহ করা শুরু করে। নেটওয়ার্ক অনুরোধগুলি পর্যবেক্ষণ করতে Firebase সক্ষম করতে, আপনাকে Performance Monitoring গ্রেডল প্লাগইনও যোগ করতে হবে (পরবর্তী ধাপ)।

  1. আপনার মডিউল (অ্যাপ-লেভেল) গ্র্যাডেল ফাইলে (সাধারণত <project>/<app-module>/build.gradle.kts অথবা <project>/<app-module>/build.gradle ), অ্যান্ড্রয়েডের জন্য Performance Monitoring লাইব্রেরির জন্য নির্ভরতা যোগ করুন। লাইব্রেরি সংস্করণ নিয়ন্ত্রণ করতে আমরা Firebase Android BoM ব্যবহার করার পরামর্শ দিই।

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:34.4.0"))
    
        // 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:22.0.2")
    }

  2. আপনার অ্যাপটি পুনরায় কম্পাইল করুন।

ধাপ ২ : আপনার অ্যাপে Performance Monitoring গ্রেডল প্লাগইন যোগ করুন

Performance Monitoring গ্রেডল প্লাগইন যোগ করার পর, ফায়ারবেস স্বয়ংক্রিয়ভাবে HTTP/S নেটওয়ার্ক অনুরোধের জন্য ডেটা সংগ্রহ শুরু করে। প্লাগইনটি আপনাকে @AddTrace অ্যানোটেশন ব্যবহার করে কাস্টম কোড ট্রেসগুলি ইন্সট্রুমেন্ট করতে সক্ষম করে।

  1. আপনার রুট-লেভেল (প্রজেক্ট-লেভেল) গ্র্যাডেল ফাইলে ( <project>/build.gradle.kts অথবা <project>/build.gradle ) Performance Monitoring গ্র্যাডেল প্লাগইন যোগ করুন:

    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.4.4" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "2.0.1" 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.4.4' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '2.0.1' apply false
    }
  2. আপনার মডিউল (অ্যাপ-লেভেল) গ্র্যাডেল ফাইলে (সাধারণত <project>/<app-module>/build.gradle.kts অথবা <project>/<app-module>/build.gradle ) Performance Monitoring গ্র্যাডেল প্লাগইন যোগ করুন:

    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'
        ...
    }
  3. আপনার অ্যাপটি পুনরায় কম্পাইল করুন।

ধাপ ৩ : প্রাথমিক ডেটা প্রদর্শনের জন্য কর্মক্ষমতা ইভেন্ট তৈরি করুন

আপনার অ্যাপে SDK সফলভাবে যোগ করার পর Firebase ইভেন্টগুলি প্রক্রিয়াকরণ শুরু করে। যদি আপনি এখনও স্থানীয়ভাবে ডেভেলপ করেন, তাহলে প্রাথমিক ডেটা সংগ্রহ এবং প্রক্রিয়াকরণের জন্য ইভেন্ট তৈরি করতে আপনার অ্যাপের সাথে ইন্টারঅ্যাক্ট করুন।

  1. আপনার অ্যাপটিকে ব্যাকগ্রাউন্ড এবং ফোরগ্রাউন্ডের মধ্যে বেশ কয়েকবার স্যুইচ করে, স্ক্রিন জুড়ে নেভিগেট করে আপনার অ্যাপের সাথে ইন্টারঅ্যাক্ট করে এবং/অথবা নেটওয়ার্ক অনুরোধগুলি ট্রিগার করে ইভেন্ট তৈরি করুন।

  2. Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে যান। কয়েক মিনিটের মধ্যেই আপনার প্রাথমিক ডেটা প্রদর্শিত হবে।

    যদি আপনি আপনার প্রাথমিক ডেটার প্রদর্শন দেখতে না পান, তাহলে সমস্যা সমাধানের টিপসগুলি পর্যালোচনা করুন।

ধাপ ৪ : (ঐচ্ছিক) পারফর্ম্যান্স ইভেন্টের জন্য লগ বার্তা দেখুন

  1. আপনার অ্যাপের AndroidManifest.xml ফাইলে একটি <meta-data> উপাদান যোগ করে বিল্ড টাইমে Performance Monitoring জন্য ডিবাগ লগিং সক্ষম করুন, যেমন:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
  2. কোনও ত্রুটির বার্তার জন্য আপনার লগ বার্তাগুলি পরীক্ষা করুন।

  3. Performance Monitoring তার লগ বার্তাগুলিকে FirebasePerformance দিয়ে ট্যাগ করে। logcat ফিল্টারিং ব্যবহার করে, আপনি নিম্নলিখিত কমান্ডটি চালিয়ে নির্দিষ্টভাবে সময়কাল ট্রেস এবং HTTP/S নেটওয়ার্ক অনুরোধ লগিং দেখতে পারেন:

    adb logcat -s FirebasePerformance
  4. নিম্নলিখিত ধরণের লগগুলি পরীক্ষা করুন যা নির্দেশ করে যে Performance Monitoring পারফরম্যান্স ইভেন্টগুলি লগ করছে:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Firebase কনসোলে আপনার ডেটা দেখতে URL-এ ক্লিক করুন। ড্যাশবোর্ডে ডেটা আপডেট হতে কয়েক মুহূর্ত সময় লাগতে পারে।

যদি আপনার অ্যাপ পারফর্ম্যান্স ইভেন্ট লগ না করে, তাহলে সমস্যা সমাধানের টিপস পর্যালোচনা করুন।

ধাপ ৫ : (ঐচ্ছিক) নির্দিষ্ট কোডের জন্য কাস্টম মনিটরিং যোগ করুন

আপনার অ্যাপে নির্দিষ্ট কোডের সাথে সম্পর্কিত কর্মক্ষমতা ডেটা নিরীক্ষণ করতে, আপনি কাস্টম কোড ট্রেস ব্যবহার করতে পারেন।

একটি কাস্টম কোড ট্রেস ব্যবহার করে, আপনি পরিমাপ করতে পারেন যে আপনার অ্যাপটি একটি নির্দিষ্ট কাজ বা কাজের সেট সম্পূর্ণ করতে কত সময় নেয়, যেমন ছবির একটি সেট লোড করা বা আপনার ডাটাবেস অনুসন্ধান করা। একটি কাস্টম কোড ট্রেসের ডিফল্ট মেট্রিক হল এর সময়কাল, তবে আপনি ক্যাশে হিট এবং মেমরি সতর্কতার মতো কাস্টম মেট্রিকও যোগ করতে পারেন।

আপনার কোডে, আপনি Performance Monitoring SDK দ্বারা প্রদত্ত API ব্যবহার করে একটি কাস্টম কোড ট্রেসের শুরু এবং শেষ নির্ধারণ করেন (এবং যেকোনো পছন্দসই কাস্টম মেট্রিক্স যোগ করেন)। অ্যান্ড্রয়েড অ্যাপের জন্য, আপনি @AddTrace অ্যানোটেশন ব্যবহার করে নির্দিষ্ট পদ্ধতির সময়কালও পর্যবেক্ষণ করতে পারেন।

এই বৈশিষ্ট্যগুলি এবং আপনার অ্যাপে কীভাবে এগুলি যোগ করবেন সে সম্পর্কে আরও জানতে নির্দিষ্ট কোডের জন্য Add Monitoring দেখুন।

ধাপ ৬ : আপনার অ্যাপটি স্থাপন করুন এবং ফলাফল পর্যালোচনা করুন

এক বা একাধিক পরীক্ষামূলক ডিভাইস ব্যবহার করে Performance Monitoring যাচাই করার পরে, আপনি আপনার অ্যাপের আপডেট করা সংস্করণটি আপনার ব্যবহারকারীদের কাছে স্থাপন করতে পারেন।

আপনি Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে পারফরম্যান্স ডেটা পর্যবেক্ষণ করতে পারেন।

জ্ঞাত সমস্যা

  • Performance Monitoring গ্রেডল প্লাগইন v1.1.0 পেয়ারা নির্ভরতাগুলিতে অমিল সৃষ্টি করতে পারে, যার ফলে নিম্নলিখিত ত্রুটি দেখা দিতে পারে:

    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.1)।

    • আপনার রুট-লেভেল (প্রজেক্ট-লেভেল) গ্র্যাডেল ফাইলে ( <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 শুধুমাত্র মূল প্রক্রিয়াটিকে সমর্থন করে।

পরবর্তী পদক্ষেপ