Performance Monitoring আপনার অ্যাপের পারফরম্যান্স নিরীক্ষণ করতে সাহায্য করার জন্য ট্রেস সংগ্রহ করে। ট্রেস হলো আপনার অ্যাপের দুটি ভিন্ন সময়ের মধ্যবর্তী সময়ে সংগৃহীত পারফরম্যান্স ডেটার একটি রিপোর্ট।
আপনার অ্যাপের নির্দিষ্ট কোডের সাথে সম্পর্কিত পারফরম্যান্স ডেটা নিরীক্ষণ করতে আপনি নিজস্ব ট্রেস তৈরি করতে পারেন। একটি কাস্টম কোড ট্রেসের মাধ্যমে, আপনি পরিমাপ করতে পারেন যে আপনার অ্যাপের একটি নির্দিষ্ট কাজ বা একাধিক কাজ সম্পন্ন করতে কত সময় লাগে, যেমন—একগুচ্ছ ছবি লোড করা বা আপনার ডাটাবেস কোয়েরি করা।
একটি কাস্টম কোড ট্রেসের ডিফল্ট মেট্রিক হলো এর 'ডিউরেশন' (ট্রেসটির শুরু এবং শেষের মধ্যবর্তী সময়), তবে আপনি কাস্টম মেট্রিকও যোগ করতে পারেন।
আপনার কোডে, আপনি Performance Monitoring SDK দ্বারা প্রদত্ত API ব্যবহার করে একটি কাস্টম কোড ট্রেসের শুরু এবং শেষ নির্ধারণ করেন।অ্যান্ড্রয়েড অ্যাপের ক্ষেত্রে, আপনি @AddTrace অ্যানোটেশন ব্যবহার করে নির্দিষ্ট মেথডগুলোও মনিটর করতে পারেন।কাস্টম কোড ট্রেস তৈরি করার পর যেকোনো সময় চালু করা যেতে পারে এবং এগুলো থ্রেড সেফ।
যেহেতু এই ট্রেসগুলির জন্য সংগৃহীত ডিফল্ট মেট্রিকটি 'duration', তাই এগুলিকে কখনও কখনও 'Duration traces' বলা হয়।
আপনি পারফরম্যান্স ড্যাশবোর্ডের একেবারে নিচে থাকা ট্রেস টেবিলের কাস্টম ট্রেস সাবট্যাবে এই ট্রেসগুলোর ডেটা দেখতে পারেন (এই পৃষ্ঠার পরবর্তী অংশে কনসোল ব্যবহার সম্পর্কে আরও জানুন)।
ডিফল্ট অ্যাট্রিবিউট, কাস্টম অ্যাট্রিবিউট এবং কাস্টম মেট্রিক্স
কাস্টম কোড ট্রেসের জন্য, Performance Monitoring স্বয়ংক্রিয়ভাবে ডিফল্ট অ্যাট্রিবিউটগুলো (যেমন অ্যাপ ভার্সন, দেশ, ডিভাইস ইত্যাদি সাধারণ মেটাডেটা) লগ করে, যাতে আপনি Firebase কনসোলে ট্রেসের জন্য ডেটা ফিল্টার করতে পারেন। এছাড়াও আপনি কাস্টম অ্যাট্রিবিউট (যেমন, গেম লেভেল বা ব্যবহারকারীর প্রোপার্টি) যোগ এবং মনিটর করতে পারেন।আপনি ট্রেসের আওতার মধ্যে ঘটা পারফরম্যান্স-সম্পর্কিত ইভেন্টগুলোর জন্য কাস্টম মেট্রিক রেকর্ড করতে একটি কাস্টম কোড ট্রেস আরও কনফিগার করতে পারেন। উদাহরণস্বরূপ, আপনি ক্যাশে হিট ও মিসের সংখ্যা অথবা উল্লেখযোগ্য সময়ের জন্য UI কতবার প্রতিক্রিয়াহীন হয়ে পড়ে, তার সংখ্যার জন্য একটি কাস্টম মেট্রিক তৈরি করতে পারেন।
ট্রেসের জন্য ডিফল্ট অ্যাট্রিবিউট এবং ডিফল্ট মেট্রিকের পাশাপাশি কাস্টম অ্যাট্রিবিউট ও কাস্টম মেট্রিকগুলোও Firebase কনসোলে প্রদর্শিত হয়।
কাস্টম কোড ট্রেস যোগ করুন
নির্দিষ্ট অ্যাপ্লিকেশন কোড নিরীক্ষণ করার জন্য কাস্টম কোড ট্রেস যোগ করতে Performance Monitoring ট্রেস এপিআই ব্যবহার করুন।
নিম্নলিখিত বিষয়গুলো লক্ষ্য করুন:
- একটি অ্যাপে একাধিক কাস্টম কোড ট্রেস থাকতে পারে।
- একই সময়ে একাধিক কাস্টম কোড ট্রেস চালানো যেতে পারে।
- কাস্টম কোড ট্রেসের নামের ক্ষেত্রে নিম্নলিখিত শর্তাবলী পূরণ করতে হবে: নামের শুরুতে বা শেষে কোনো স্পেস থাকা যাবে না, শুরুতে কোনো আন্ডারস্কোর (
_) অক্ষর থাকা যাবে না এবং এর সর্বোচ্চ দৈর্ঘ্য ১০০ অক্ষর হতে হবে। - কাস্টম কোড ট্রেস কাস্টম মেট্রিক এবং কাস্টম অ্যাট্রিবিউট যোগ করা সমর্থন করে।
একটি কাস্টম কোড ট্রেস শুরু এবং বন্ধ করতে, যে কোডটি আপনি ট্রেস করতে চান সেটিকে নিম্নলিখিতগুলির মতো কোডের লাইন দিয়ে মুড়ে দিন (এই উদাহরণে test_trace নামের একটি কাস্টম ট্রেস ব্যবহার করা হয়েছে):
Kotlin
// Import these Performance Monitoring classes at the top of your `.kt` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; val myTrace = Firebase.performance.newTrace("test_trace") myTrace.start() // code that you want to trace myTrace.stop()
Java
// Import these Performance Monitoring classes at the top of your `.java` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace"); myTrace.start(); // code that you want to trace myTrace.stop();
(ঐচ্ছিক) @AddTrace ব্যবহার করে নির্দিষ্ট পদ্ধতিগুলো নিরীক্ষণ করুন।
অ্যান্ড্রয়েড অ্যাপগুলো কাস্টম কোড ট্রেস করার জন্য @AddTrace অ্যানোটেশনও সাপোর্ট করে। এই ফিচারটি ব্যবহার করলে, ট্রেসটি নির্দিষ্ট মেথডের শুরু থেকে শুরু হয় এবং মেথডটি সম্পূর্ণ হলে থেমে যায়; এর মধ্যে মেথড দ্বারা কল করা সবকিছুও অন্তর্ভুক্ত থাকে।
উদাহরণস্বরূপ, আপনি onCreateTrace নামে একটি কাস্টম কোড ট্রেস তৈরি করতে পারেন, যা onCreate() মেথডটি কল করা হলে রান করে।
Kotlin
// Import these Performance Monitoring classes at the top of your `.kt` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.AddTrace; // Add the `@AddTrace` annotation above the method you want to trace // the `enabled` argument is optional and defaults to true @AddTrace(name = "onCreateTrace", enabled = true) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) }
Java
// Import these Performance Monitoring classes at the top of your `.java` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.AddTrace; // Add the `@AddTrace` annotation above the method you want to trace @Override @AddTrace(name = "onCreateTrace", enabled = true /* optional */) protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); }
কাস্টম কোড ট্রেসে কাস্টম মেট্রিক যোগ করুন
কাস্টম কোড ট্রেসে কাস্টম মেট্রিক যোগ করতে Performance Monitoring ট্রেস এপিআই ব্যবহার করুন।
নিম্নলিখিত বিষয়গুলো লক্ষ্য করুন:
- কাস্টম মেট্রিকের নাম অবশ্যই নিম্নলিখিত শর্তাবলী পূরণ করবে: নামের শুরুতে বা শেষে কোনো অতিরিক্ত স্পেস থাকবে না, শুরুতে কোনো আন্ডারস্কোর (
_) অক্ষর থাকবে না এবং এর সর্বোচ্চ দৈর্ঘ্য হবে ১০০ অক্ষর। - প্রতিটি কাস্টম কোড ট্রেস ৩২টি পর্যন্ত মেট্রিক রেকর্ড করতে পারে (ডিফল্ট ডিউরেশন মেট্রিক সহ)।
একটি কাস্টম মেট্রিক যোগ করতে, প্রতিবার ইভেন্টটি ঘটার সময় নিম্নলিখিতের মতো একটি কোড লাইন যোগ করুন। উদাহরণস্বরূপ, এই কাস্টম মেট্রিকটি আপনার অ্যাপে ঘটা পারফরম্যান্স-সম্পর্কিত ইভেন্টগুলি গণনা করে, যেমন ক্যাশে হিট এবং মিস (উদাহরণস্বরূপ ইভেন্টের নাম item_cache_hit এবং item_cache_miss এবং 1 এর ইনক্রিমেন্ট ব্যবহার করে)।
Kotlin
val myTrace = Firebase.performance.newTrace("test_trace") myTrace.start() // code that you want to trace (and log custom metrics) val item = cache.fetch("item") if (item != null) { myTrace.incrementMetric("item_cache_hit", 1) } else { myTrace.incrementMetric("item_cache_miss", 1) } myTrace.stop()
Java
Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace"); myTrace.start(); // code that you want to trace (and log custom metrics) Item item = cache.fetch("item"); if (item != null) { myTrace.incrementMetric("item_cache_hit", 1); } else { myTrace.incrementMetric("item_cache_miss", 1); } myTrace.stop();
কাস্টম কোড ট্রেসের জন্য কাস্টম অ্যাট্রিবিউট তৈরি করুন
কাস্টম কোড ট্রেসে কাস্টম অ্যাট্রিবিউট যোগ করতে Performance Monitoring ট্রেস এপিআই ব্যবহার করুন।কাস্টম অ্যাট্রিবিউট ব্যবহার করতে, আপনার অ্যাপে এমন কোড যোগ করুন যা অ্যাট্রিবিউটটি সংজ্ঞায়িত করে এবং এটিকে একটি নির্দিষ্ট কাস্টম কোড ট্রেসের সাথে যুক্ত করে। ট্রেস শুরু হওয়ার এবং ট্রেস শেষ হওয়ার মধ্যবর্তী যেকোনো সময়ে আপনি কাস্টম অ্যাট্রিবিউটটি সেট করতে পারেন।
নিম্নলিখিত বিষয়গুলো লক্ষ্য করুন:
কাস্টম অ্যাট্রিবিউটের নামগুলোকে অবশ্যই নিম্নলিখিত শর্তগুলো পূরণ করতে হবে:
- শুরুতে বা শেষে কোনো স্পেস দেওয়া যাবে না, শুরুতে আন্ডারস্কোর (
_) চিহ্ন ব্যবহার করা যাবে না। - কোনো ফাঁকা স্থান নেই
- সর্বোচ্চ দৈর্ঘ্য ৩২ অক্ষর
- নামের জন্য অনুমোদিত অক্ষরগুলো হলো
AZ,az, এবং_।
- শুরুতে বা শেষে কোনো স্পেস দেওয়া যাবে না, শুরুতে আন্ডারস্কোর (
প্রতিটি কাস্টম কোড ট্রেস সর্বোচ্চ ৫টি কাস্টম অ্যাট্রিবিউট রেকর্ড করতে পারে।
অনুগ্রহ করে নিশ্চিত করুন যে কাস্টম অ্যাট্রিবিউটগুলিতে এমন কোনো তথ্য নেই যা গুগলের কাছে কোনো ব্যক্তিকে ব্যক্তিগতভাবে শনাক্ত করতে পারে।
এই নির্দেশিকা সম্পর্কে আরও জানুন
Kotlin
Firebase.performance.newTrace("test_trace").trace { // Update scenario. putAttribute("experiment", "A") // Reading scenario. val experimentValue = getAttribute("experiment") // Delete scenario. removeAttribute("experiment") // Read attributes. val traceAttributes = this.attributes }
Java
Trace trace = FirebasePerformance.getInstance().newTrace("test_trace"); // Update scenario. trace.putAttribute("experiment", "A"); // Reading scenario. String experimentValue = trace.getAttribute("experiment"); // Delete scenario. trace.removeAttribute("experiment"); // Read attributes. Map<String, String> traceAttributes = trace.getAttributes();
পারফরম্যান্স ডেটা ট্র্যাক করুন, দেখুন এবং ফিল্টার করুন
আপনার ড্যাশবোর্ডে নির্দিষ্ট মেট্রিকগুলি ট্র্যাক করুন
আপনার মূল মেট্রিকগুলোর প্রবণতা কেমন তা জানতে, সেগুলোকে পারফরম্যান্স ড্যাশবোর্ডের শীর্ষে থাকা মেট্রিক্স বোর্ডে যোগ করুন। সপ্তাহ-ভিত্তিক পরিবর্তন দেখে আপনি দ্রুত অবনতি শনাক্ত করতে পারবেন অথবা আপনার কোডের সাম্প্রতিক পরিবর্তনগুলো পারফরম্যান্স উন্নত করছে কিনা তা যাচাই করতে পারবেন।
ফায়ারবেস পারফরম্যান্স মনিটরিং ড্যাশবোর্ডআপনার মেট্রিক্স বোর্ডে একটি মেট্রিক যোগ করতে, এই ধাপগুলো অনুসরণ করুন:
- Firebase কনসোলে পারফরম্যান্স ড্যাশবোর্ডে যান।
- একটি খালি মেট্রিক কার্ডে ক্লিক করুন, তারপর আপনার বোর্ডে যোগ করার জন্য একটি বিদ্যমান মেট্রিক নির্বাচন করুন।
- আরও বিকল্পের জন্য, যেমন কোনো মেট্রিক প্রতিস্থাপন বা অপসারণ করতে, ডেটাযুক্ত মেট্রিক কার্ডে ক্লিক করুন।
মেট্রিক্স বোর্ডটি সময়ের সাথে সাথে সংগৃহীত মেট্রিক ডেটা গ্রাফিক্যাল আকারে এবং সংখ্যাসূচক শতাংশ পরিবর্তন হিসেবে প্রদর্শন করে।
ড্যাশবোর্ড ব্যবহার সম্পর্কে আরও জানুন।
চিহ্ন এবং তাদের ডেটা দেখুন
আপনার ট্রেসগুলো দেখতে, Firebase কনসোলের পারফরম্যান্স ড্যাশবোর্ডে যান, ট্রেস টেবিল পর্যন্ত স্ক্রল করুন, তারপর উপযুক্ত সাবট্যাবে ক্লিক করুন। টেবিলটি প্রতিটি ট্রেসের জন্য কিছু শীর্ষ মেট্রিক প্রদর্শন করে, এবং আপনি এমনকি একটি নির্দিষ্ট মেট্রিকের শতাংশ পরিবর্তন অনুসারে তালিকাটি সাজাতেও পারেন।
Performance Monitoring Firebase কনসোলে একটি ট্রাবলশুটিং পেজ প্রদান করে, যা মেট্রিকের পরিবর্তনগুলো তুলে ধরে। এর ফলে আপনার অ্যাপ এবং ব্যবহারকারীদের উপর পারফরম্যান্স সংক্রান্ত সমস্যার প্রভাব দ্রুত সমাধান করা ও কমানো সহজ হয়। সম্ভাব্য পারফরম্যান্স সমস্যা সম্পর্কে জানতে পারলে আপনি এই ট্রাবলশুটিং পেজটি ব্যবহার করতে পারেন, যেমন— নিম্নলিখিত পরিস্থিতিগুলোতে:
- আপনি ড্যাশবোর্ডে প্রাসঙ্গিক মেট্রিকগুলো নির্বাচন করেন এবং একটি বড় পার্থক্য লক্ষ্য করেন।
- ট্রেসেস টেবিলে আপনি সবচেয়ে বড় ডেল্টাগুলোকে উপরে দেখানোর জন্য সর্ট করেন, এবং আপনি একটি উল্লেখযোগ্য শতাংশ পরিবর্তন দেখতে পান।
- আপনি একটি পারফরম্যান্স সমস্যা সম্পর্কে অবহিত করে একটি ইমেল সতর্কতা পেয়েছেন।
আপনি নিম্নলিখিত উপায়ে সমস্যা সমাধান পৃষ্ঠায় প্রবেশ করতে পারেন:
- মেট্রিক ড্যাশবোর্ডে, 'মেট্রিকের বিবরণ দেখুন' বোতামটিতে ক্লিক করুন।
- যেকোনো মেট্রিক কার্ডে, নির্বাচন করুন
=> বিস্তারিত দেখুন । সমস্যা সমাধান পৃষ্ঠাটি আপনার নির্বাচিত মেট্রিক সম্পর্কে তথ্য প্রদর্শন করে। - ট্রেস টেবিলে, একটি ট্রেসের নামে অথবা সেই ট্রেসের সাথে যুক্ত সারিতে থাকা যেকোনো মেট্রিক মানে ক্লিক করুন।
- ইমেল সতর্কবার্তায়, ‘এখনই তদন্ত করুন’ এ ক্লিক করুন।
ট্রেস টেবিলে কোনো ট্রেসের নামে ক্লিক করলে, আপনি আপনার আগ্রহের মেট্রিকগুলো আরও বিস্তারিতভাবে দেখতে পারবেন। ক্লিক করুন
অ্যাট্রিবিউট দ্বারা ফিল্টার করা ফায়ারবেস পারফরম্যান্স মনিটরিং ডেটা- পূর্ববর্তী রিলিজ বা আপনার সর্বশেষ রিলিজের ডেটা দেখতে অ্যাপ সংস্করণ অনুযায়ী ফিল্টার করুন।
- পুরোনো ডিভাইসগুলো আপনার অ্যাপটি কীভাবে পরিচালনা করে তা জানতে ডিভাইস অনুযায়ী ফিল্টার করুন।
- আপনার ডেটাবেসের অবস্থান কোনো নির্দিষ্ট অঞ্চলকে প্রভাবিত করছে না তা নিশ্চিত করতে দেশ অনুযায়ী ফিল্টার করুন।
আপনার ট্রেসগুলির ডেটা দেখার বিষয়ে আরও জানুন।
পরবর্তী পদক্ষেপ
পারফরম্যান্স ডেটা পরীক্ষা করতে অ্যাট্রিবিউট ব্যবহারের বিষয়ে আরও জানুন।
Firebase কনসোলে পারফরম্যান্স সংক্রান্ত সমস্যাগুলো কীভাবে ট্র্যাক করবেন সে সম্পর্কে আরও জানুন।
আপনার অ্যাপের পারফরম্যান্স কমিয়ে দিচ্ছে এমন কোড পরিবর্তনের জন্য অ্যালার্ট সেট আপ করুন । উদাহরণস্বরূপ, কোনো নির্দিষ্ট কাস্টম কোড ট্রেসের সময়কাল আপনার সেট করা একটি থ্রেশহোল্ড অতিক্রম করলে, আপনি আপনার টিমের জন্য একটি ইমেল অ্যালার্ট কনফিগার করতে পারেন।
- ব্যবহারকারীর সেশনের বিস্তারিত রিপোর্ট দেখুন, যেখানে আপনি একই সেশনে সংগৃহীত অন্যান্য ট্রেসের টাইমলাইন প্রেক্ষাপটে একটি নির্দিষ্ট ট্রেস দেখতে পারবেন।