নির্দিষ্ট অ্যাপ কোডের জন্য কাস্টম মনিটরিং যোগ করুন


আপনার অ্যাপের পারফর্ম্যান্স মনিটর করতে সাহায্য করার জন্য Performance Monitoring ট্রেস সংগ্রহ করে। ট্রেস হল আপনার অ্যাপে দুটি সময়ের মধ্যে ক্যাপচার করা পারফর্ম্যান্স ডেটার রিপোর্ট।

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

কাস্টম কোড ট্রেসের ডিফল্ট মেট্রিক হল এর "সময়সীমা" (ট্রেসের শুরু ও শেষ হওয়ার পয়েন্টের মধ্যবর্তী সময়), তবে আপনি কাস্টম মেট্রিকও যোগ করতে পারবেন।

আপনার কোডে, Performance Monitoring SDK-এর মাধ্যমে প্রদান করা API ব্যবহার করে আপনি কাস্টম কোড ট্রেসের শুরু ও শেষ ডিফাইন করেন। কাস্টম কোড ট্রেস তৈরি করার পরে যেকোনও সময় শুরু করা যেতে পারে এবং সেগুলি থ্রেড-সেফ।

এইসব ট্রেসের জন্য সংগৃহীত ডিফল্ট মেট্রিক "সময়সীমা" হওয়ার কারণে, এগুলিকে কখনও কখনও "সময়সীমা ট্রেস" বলা হয়।

আপনি এইসব ট্রেসের ডেটা ট্রেস টেবিলের কাস্টম ট্রেস সাবট্যাবে দেখতে পাবেন, যা পারফর্ম্যান্স ড্যাশবোর্ডের নিচে রয়েছে (এই পৃষ্ঠায় পরে কনসোল ব্যবহার করা সম্পর্কে আরও জানুন)।

ডিফল্ট অ্যাট্রিবিউট, কাস্টম অ্যাট্রিবিউট ও কাস্টম মেট্রিক

কাস্টম কোড ট্রেসের জন্য, Performance Monitoring অটোমেটিক ডিফল্ট অ্যাট্রিবিউট (দেশ, ব্রাউজার, পৃষ্ঠা URL ইত্যাদির মতো সাধারণ মেটাডেটা) লগ করে যাতে আপনি Firebase কনসোলে ট্রেসের জন্য ডেটা ফিল্টার করতে পারেন। এছাড়াও, আপনি কাস্টম অ্যাট্রিবিউট (যেমন, গেম লেভেল বা ব্যবহারকারীর প্রপার্টি) যোগ ও মনিটর করতে পারবেন।

ট্রেসের স্কোপের মধ্যে ঘটা পারফর্ম্যান্স-সম্পর্কিত ইভেন্টের জন্য কাস্টম মেট্রিক রেকর্ড করতে আপনি কাস্টম কোড ট্রেস আরও কনফিগার করতে পারবেন। যেমন, আপনি ক্যাশে হিট ও মিসের সংখ্যা বা UI উল্লেখযোগ্য সময়ের জন্য কাজ না করার সংখ্যার জন্য কাস্টম মেট্রিক তৈরি করতে পারেন।

ট্রেসের জন্য ডিফল্ট অ্যাট্রিবিউট ও ডিফল্ট মেট্রিকের পাশাপাশি Firebase কনসোলে কাস্টম অ্যাট্রিবিউট ও কাস্টম মেট্রিক দেখা যায়।

কাস্টম কোড ট্রেস যোগ করুন

নির্দিষ্ট অ্যাপ্লিকেশন কোড মনিটর করার জন্য কাস্টম কোড ট্রেস যোগ করতে Performance Monitoring Trace API ব্যবহার করুন।

এগুলি মনে রাখবেন:

  • একটি অ্যাপে একাধিক কাস্টম কোড ট্রেস থাকতে পারে।
  • একই সময়ে একাধিক কাস্টম কোড ট্রেস চালানো যেতে পারে।
  • কাস্টম কোড ট্রেসের নামের ক্ষেত্রে নিম্নলিখিত শর্ত পূরণ করতে হবে: প্রথমে বা শেষে কোনও হোয়াইটস্পেস থাকা চলবে না, প্রথমে আন্ডারস্কোর (_) থাকা চলবে না, এবং সর্বাধিক দৈর্ঘ্য ১০০টি অক্ষর হতে হবে।
  • কাস্টম কোড ট্রেস কাস্টম মেট্রিক এবং কাস্টম অ্যাট্রিবিউট যোগ করতে সাহায্য করে।

কাস্টম কোড ট্রেস শুরু ও বন্ধ করতে, আপনি যে কোড ট্রেস করতে চান, সেটি নিচে দেখানো কোডের লাইনের মতো করে র‌্যাপ করুন:

Web

import { trace } from "firebase/performance";

const t = trace(perf, "CUSTOM_TRACE_NAME");
t.start();

// Code that you want to trace 
// ...

t.stop();

Web

const trace = perf.trace("CUSTOM_TRACE_NAME");
trace.start();

// Code that you want to trace 
// ...

trace.stop();

User Timing API ব্যবহার করে কাস্টম কোড ট্রেস যোগ করা

Performance Monitoring Trace API ছাড়াও, আপনি ব্রাউজারের নেটিভ User Timing API ব্যবহার করে কাস্টম কোড ট্রেস যোগ করতে পারবেন। এই API ব্যবহার করে পরিমাপ করা ট্রেসের সময়সীমা অটোমেটিক Performance Monitoring SDK বেছে নেয়। আপনি যদি Performance Monitoring SDK অ্যাসিঙ্ক্রোনাসভাবে লোড করতে চান, তাহলে User Timing API ব্যবহার করা বিশেষভাবে সহায়ক। SDK শুরু হয়ে গেলে, SDK লোড হওয়ার আগে হওয়া পরিমাপ রেকর্ড করবে।

এই ফিচার ব্যবহার করতে, আপনি যে কোড ট্রেস করতে চান সেটি User Timing মার্ক দিয়ে র‍্যাপ করুন:

Web

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

Web

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

মনে রাখবেন যে উপরের উদাহরণে performance বলতে ব্রাউজারের window.performance অবজেক্টকে বোঝানো হয়েছে।

ব্যবহারকারীর টাইমিং API ব্যবহার করার সময়, কাস্টম কোড ট্রেসে কাস্টম মেট্রিক ও অ্যাট্রিবিউট যোগ করা যাবে না। আপনি যদি কাস্টম কোড ট্রেসে সেই কাস্টম এলিমেন্ট যোগ করতে চান, তাহলে Performance Monitoring Trace API ব্যবহার করুন।

কাস্টম কোড ট্রেসে কাস্টম মেট্রিক যোগ করুন

কাস্টম কোড ট্রেসে কাস্টম মেট্রিক যোগ করতে Performance Monitoring Trace API ব্যবহার করুন।

এগুলি মনে রাখবেন:

  • কাস্টম মেট্রিকের নাম অবশ্যই নিম্নলিখিত প্রয়োজনীয়তা পূরণ করতে হবে: প্রথমে বা শেষে কোনও হোয়াইটস্পেস, প্রথমে কোনও আন্ডারস্কোর (_) অক্ষর, এবং সর্বাধিক দৈর্ঘ্য ১০০ অক্ষর।
  • প্রতিটি কাস্টম কোড ট্রেস সর্বাধিক ৩২টি মেট্রিক রেকর্ড করতে পারে (ডিফল্ট সময়সীমা মেট্রিক সহ)।

কাস্টম মেট্রিক যোগ করতে, প্রতিবার ইভেন্ট ঘটার সময় নিম্নলিখিত কোডের মতো একটি লাইন যোগ করুন। যেমন, এই কাস্টম মেট্রিক আপনার অ্যাপে ঘটা পারফর্ম্যান্স-সম্পর্কিত ইভেন্ট গণনা করে।

Web

import { trace } from "firebase/performance";

async function getInventory(inventoryIds) {
  const t = trace(perf, "inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  t.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  t.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  t.stop();

  return inventoryData;
}

Web

async function getInventory(inventoryIds) {
  const trace = perf.trace("inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  trace.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  trace.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  trace.stop();

  return inventoryData;
}

কাস্টম কোড ট্রেসের জন্য কাস্টম অ্যাট্রিবিউট তৈরি করুন

কাস্টম কোড ট্রেসে কাস্টম অ্যাট্রিবিউট যোগ করতে Performance Monitoring Trace API ব্যবহার করুন।

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

এগুলি মনে রাখবেন:

  • কাস্টম অ্যাট্রিবিউটের নাম নিম্নলিখিত শর্ত পূরণ করতে হবে:

    • শুরুতে বা শেষে কোনও হোয়াইটস্পেস, শুরুতে আন্ডারস্কোর (_) অক্ষর নেই
    • কোনও স্পেস নেই
    • সর্বাধিক ৩২টি অক্ষর লেখা যাবে
    • নামের জন্য অনুমোদিত অক্ষরগুলি হল A-Z, a-z এবং _।
  • প্রতিটি কাস্টম কোড ট্রেস সর্বাধিক ৫টি কাস্টম অ্যাট্রিবিউট রেকর্ড করতে পারে।

  • কাস্টম অ্যাট্রিবিউটে এমন কোনও তথ্য যেন না থাকে যা থেকে Google কোনও ব্যক্তিকে ব্যক্তিগতভাবে শনাক্ত করতে পারে।

    এই নির্দেশিকা সম্পর্কে আরও জানুন

Web

import { trace } from "firebase/performance";

const t = trace(perf, "test_trace");
t.putAttribute("experiment", "A");

// Update scenario
t.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = t.getAttribute("experiment");

// Delete scenario
t.removeAttribute("experiment");

// Read attributes
const traceAttributes = t.getAttributes();

Web

const trace = perf.trace("test_trace");
trace.putAttribute("experiment", "A");

// Update scenario
trace.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = trace.getAttribute("experiment");

// Delete scenario
trace.removeAttribute("experiment");

// Read attributes
const traceAttributes = trace.getAttributes();

পারফর্ম্যান্স ডেটা ট্র্যাক, ভিউ ও ফিল্টার করা

রিয়েল-টাইম পারফর্ম্যান্স ডেটা দেখতে, আপনার অ্যাপ যেন এমন একটি Performance Monitoring SDK ভার্সন ব্যবহার করে যা রিয়েল-টাইম ডেটা প্রসেসিংয়ের সাথে মানানসই হয়। রিয়েল-টাইম পারফর্ম্যান্স ডেটা সম্পর্কে আরও জানুন।

আপনার ড্যাশবোর্ডে নির্দিষ্ট মেট্রিক ট্র্যাক করুন

আপনার মূল মেট্রিক কীভাবে ট্রেন্ডিং হচ্ছে তা জানতে, পারফর্ম্যান্স ড্যাশবোর্ডের উপরে আপনার মেট্রিক বোর্ডে সেগুলি যোগ করুন। আপনি সপ্তাহ-প্রতি-সপ্তাহ পরিবর্তন দেখে দ্রুত রিগ্রেশন শনাক্ত করতে পারেন অথবা আপনার কোডে সাম্প্রতিক পরিবর্তনগুলি পারফর্ম্যান্স উন্নত করছে কিনা তা যাচাই করতে পারেন।

<span class=Firebase পারফর্ম্যান্স মনিটরিং ড্যাশবোর্ড" />

আপনার মেট্রিক বোর্ডে মেট্রিক যোগ করতে, এই ধাপগুলি অনুসরণ করুন:

  1. Firebase কনসোলে পারফর্ম্যান্স ড্যাশবোর্ড-এ যান।
  2. একটি খালি মেট্রিক কার্ডে ক্লিক করুন, তারপর আপনার বোর্ডে যোগ করার জন্য একটি বিদ্যমান মেট্রিক বেছে নিন।
  3. আরও বিকল্পের জন্য, যেমন কোনও মেট্রিক পরিবর্তন করতে বা সরিয়ে দিতে, পপুলেট করা মেট্রিক কার্ডে -এ ক্লিক করুন।

মেট্রিক বোর্ড সময়ের সাথে সাথে সংগৃহীত মেট্রিক ডেটা গ্রাফিক্যাল ফর্ম এবং সংখ্যাগত শতাংশের পরিবর্তন, উভয় হিসেবেই দেখায়।

ড্যাশবোর্ড ব্যবহার করা সম্পর্কে আরও জানুন।

ট্রেস ও তার ডেটা দেখুন

আপনার ট্রেস দেখতে, Firebase কনসোলে পারফর্ম্যান্স ড্যাশবোর্ড-এ যান, ট্রেস টেবিল পর্যন্ত স্ক্রল করে নিচে নামুন, তারপর উপযুক্ত সাবট্যাবে ক্লিক করুন। টেবিলে প্রতিটি ট্রেসের জন্য কিছু সেরা মেট্রিক দেখানো হয় এবং আপনি এমনকি নির্দিষ্ট মেট্রিকের জন্য শতাংশের পরিবর্তন অনুযায়ী তালিকা সাজাতে পারেন।

Performance Monitoring, Firebase কনসোলে একটি সমস্যার সমাধানকরণ পৃষ্ঠা প্রদান করে যা মেট্রিক পরিবর্তন হাইলাইট করে, আপনার অ্যাপ এবং ব্যবহারকারীদের উপর পারফর্ম্যান্স সংক্রান্ত সমস্যার প্রভাব দ্রুত সমাধান করা এবং কমানো সহজ করে তোলে। সম্ভাব্য পারফর্ম্যান্স সংক্রান্ত সমস্যা সম্পর্কে জানার সময় আপনি সমস্যার সমাধানকরণ পৃষ্ঠা ব্যবহার করতে পারেন, যেমন, নিম্নলিখিত পরিস্থিতিতে:

  • আপনি ড্যাশবোর্ডে প্রাসঙ্গিক মেট্রিক বেছে নেন এবং একটি বড় ডেল্টা লক্ষ্য করেন।
  • ট্রেস টেবিলে আপনি সবচেয়ে বড় ডেল্টা উপরে দেখানোর জন্য সাজান এবং আপনি উল্লেখযোগ্য শতাংশ পরিবর্তন দেখতে পান।
  • পারফর্ম্যান্স সংক্রান্ত সমস্যা সম্পর্কে আপনাকে জানিয়ে একটি ইমেল সতর্কতা পাঠানো হয়।

আপনি নিম্নলিখিত উপায়ে সমস্যার সমাধানকরণ পৃষ্ঠায় অ্যাক্সেস করতে পারবেন:

  • মেট্রিক ড্যাশবোর্ডে, মেট্রিকের বিবরণ দেখুন বোতামে ক্লিক করুন।
  • যেকোনও মেট্রিক কার্ডে, => বিবরণ দেখুন বিকল্প বেছে নিন। সমস্যার সমাধানকরণ পৃষ্ঠায় আপনার বেছে নেওয়া মেট্রিক সম্পর্কে তথ্য দেখানো হয়।
  • ট্রেস টেবিলে, ট্রেসের নাম বা সেই ট্রেসের সাথে সম্পর্কিত সারির যেকোনও মেট্রিক ভ্যালুতে ক্লিক করুন।
  • ইমেল সতর্কতায়, এখনই তদন্ত করুন বিকল্পে ক্লিক করুন।

ট্রেস টেবিলে কোনও ট্রেসের নামে ক্লিক করলে, আপনি আগ্রহের মেট্রিক বিশ্লেষণ করতে পারবেন। অ্যাট্রিবিউট অনুযায়ী ডেটা ফিল্টার করতে ফিল্টার করুন বোতামে ক্লিক করুন, যেমন:

<span class=Firebase পারফর্ম্যান্স মনিটরিং ডেটা অ্যাট্রিবিউট অনুযায়ী ফিল্টার করা হচ্ছে" />
  • আপনার সাইটের নির্দিষ্ট পৃষ্ঠার ডেটা দেখতে পৃষ্ঠার URL অনুযায়ী ফিল্টার করুন
  • আপনার অ্যাপে 3g কানেকশন কীভাবে প্রভাব ফেলে তা জানতে কার্যকর কানেকশনের ধরন অনুযায়ী ফিল্টার করুন
  • আপনার ডেটাবেস লোকেশন যাতে কোনও নির্দিষ্ট অঞ্চলকে প্রভাবিত না করে তা নিশ্চিত করতে দেশ অনুযায়ী ফিল্টার করুন region

আপনার ট্রেসের জন্য ডেটা দেখা সম্পর্কে আরও জানুন।

পরবর্তী ধাপ