এই পৃষ্ঠায় বর্ণনা করা হয়েছে, কীভাবে আপনি আপনার Cloud Firestore ব্যবহার নিরীক্ষণ করতে এবং আপনার অ্যাপের সম্ভাব্য সমস্যাগুলো চিহ্নিত করতে পারবেন।
ব্যবহার ড্যাশবোর্ড
সময়ের সাথে সাথে ডকুমেন্টের পঠন, লিখন এবং মুছে ফেলার তথ্য দেখতে গুগল ক্লাউড কনসোল এবং Firebase কনসোলের ইউসেজ ড্যাশবোর্ডগুলো ব্যবহার করুন।
প্রবেশাধিকার নিয়ন্ত্রণ
ইউসেজ ড্যাশবোর্ডগুলির জন্য monitoring.timeSeries.list ক্লাউড IAM পারমিশন প্রয়োজন। প্রজেক্ট ওনার, এডিটর এবং ভিউয়ার রোলগুলি এই পারমিশন প্রদান করে। আপনি একটি Cloud Monitoring রোল বা একটি কাস্টম রোলের মাধ্যমেও এই পারমিশনটি প্রদান করতে পারেন।
ডাটাবেস ব্যবহারের ড্যাশবোর্ড
Cloud Firestore ডেটাবেসের ব্যবহারের মেট্রিক্স দেখতে, গুগল ক্লাউড কনসোলে ডেটাবেস ইউসেজ পেজটি খুলুন।
গুগল ক্লাউড কনসোলে, ডেটাবেস পৃষ্ঠায় যান।
ডাটাবেসের তালিকা থেকে প্রয়োজনীয় ডাটাবেসটি নির্বাচন করুন।
নেভিগেশন মেনুতে, Usage-এ ক্লিক করুন।
আপনার ডাটাবেস ব্যবহারের পরিমাণ দেখতে, পৃষ্ঠায় প্রদর্শিত বার্তার লিঙ্কটিতে ক্লিক করুন।
গুগল ক্লাউড কনসোলে ক্লাউড ফায়ারস্টোর ডেটাবেস ব্যবহারের ড্যাশবোর্ড।
সামগ্রিক ব্যবহার ড্যাশবোর্ড
আপনার প্রোজেক্টে একাধিক Cloud Firestore ডেটাবেস থাকলে, আপনি গুগল ক্লাউড কনসোল বা Firebase কনসোলে সামগ্রিক ব্যবহারের মেট্রিক্স দেখতে পারেন।
গুগল ক্লাউড কনসোল
গুগল ক্লাউড কনসোলে, প্রজেক্ট ইউসেজ পেজে যান।
গুগল ক্লাউড প্রজেক্টের ব্যবহার সম্পর্কে জানুন
প্রজেক্ট ব্যবহারের ড্যাশবোর্ডটি সময়ের সাথে সাথে ডকুমেন্ট অপারেশনগুলো নিম্নরূপভাবে দেখায়:
গুগল ক্লাউড কনসোলে ক্লাউড ফায়ারস্টোর প্রজেক্ট ব্যবহারের ড্যাশবোর্ড।
Firebase কনসোল
Cloud Firestore ব্যবহারের পৃষ্ঠায় যান ( Firebase কনসোল)
Firebase কনসোলে ক্লাউড ফায়ারস্টোর ব্যবহারের ড্যাশবোর্ড।
ব্যবহারের ড্যাশবোর্ড এবং বিলিং রিপোর্ট
Firebase এবং Cloud কনসোলে থাকা Cloud Firestore ব্যবহারের ড্যাশবোর্ডগুলো ব্যবহারের একটি আনুমানিক ধারণা দেয়। এগুলো আপনাকে ব্যবহারের আকস্মিক বৃদ্ধি শনাক্ত করতে সাহায্য করতে পারে। তবে, এই ড্যাশবোর্ডটি বিলযোগ্য কার্যক্রমের সঠিক চিত্র নয়। বিলযোগ্য ব্যবহারের পরিমাণ সম্ভবত এর চেয়ে বেশি। কোনো গরমিলের ক্ষেত্রে, ব্যবহারের ড্যাশবোর্ডের চেয়ে বিলিং রিপোর্টটিই প্রাধান্য পাবে।
ইউসেজ ড্যাশবোর্ড এবং বিলকৃত ব্যবহারের মধ্যে অমিলের কারণ হয় এমন অপারেশনগুলোর মধ্যে রয়েছে:
- আমদানি এবং রপ্তানি কার্যক্রম। এই কার্যক্রমগুলোর দ্বারা সম্পাদিত পঠন এবং লিখন কাজগুলো ব্যবহার ড্যাশবোর্ডে প্রদর্শিত হয় না।
- নো-অপ ভেরিফাই অনলি রাইট। যে রাইটগুলো শুধুমাত্র কোনো ডকুমেন্টের অস্তিত্ব বা অনস্তিত্ব যাচাই করে, সেগুলো বিলযোগ্য রিড অপারেশনের অন্তর্ভুক্ত হয়, কিন্তু রাইট ইউসেজ ড্যাশবোর্ডে এগুলো যথাক্রমে `UPDATE_NOOP` এবং `DELETE_NOOP` হিসেবে দেখানো হয়।
- নো-অপ রাইটস। যে অপারেশনগুলোর ফলে ডাটাবেসে কোনো পরিবর্তন হয় না, যেমন এমন কোনো আপডেট যা ফিল্ডের মান পরিবর্তন করে না অথবা মুছে ফেলা কোনো ডকুমেন্টে রাইট করা, সেগুলো ইউসেজ ড্যাশবোর্ডে `UPDATE_NOOP` বা `DELETE_NOOP` হিসেবে দেখানো হতে পারে। যদিও এগুলো `NOOP` হিসেবে দেখানো হয়, তবুও এগুলো বিলযোগ্য অপারেশনের অন্তর্ভুক্ত।
একত্রিত রাইট। একই ডকুমেন্টে দ্রুত পরপর একাধিকবার রাইট করা হলে, ইউসেজ ড্যাশবোর্ড একাধিক রাইটকে একত্রিত করে একটি হিসেবে গণনা করতে পারে। ব্যবহারের বিল করার সময়, প্রতিটি রাইট আলাদাভাবেই গণনা করা হয়।
ইউসেজ ড্যাশবোর্ডটি সার্ভার টাইমস্ট্যাম্প, নিউমেরিক ইনক্রিমেন্ট এবং অ্যারে ইউনিয়ন অপারেশনের মতো ফিল্ড ট্রান্সফর্মের জন্য রাইট অপারেশনগুলোকেও সংকুচিত করে। ফিল্ড ট্রান্সফর্মের ক্ষেত্রে, ইউসেজ ড্যাশবোর্ড একাধিক অপারেশনকে একটি একক অপারেশন হিসেবে গণনা করতে পারে।
- যেসব কোয়েরি কোনো ফলাফল দেয় না। শূন্য ফলাফলযুক্ত কোয়েরির জন্য একটি রিড অপারেশনের খরচ হয়। এই ব্যবহারের জন্য বিল করা হলেও তা ইউসেজ ড্যাশবোর্ডে দেখা যায় না।
- ইনডেক্স এন্ট্রি থেকে রিড অপারেশন করা হয় । এই ব্যবহারের জন্য বিল করা হয়, কিন্তু এটি ইউসেজ ড্যাশবোর্ডে দেখা যায় না। উদাহরণস্বরূপ, অ্যাগ্রিগেশন কোয়েরি ইনডেক্স এন্ট্রি রিড করার জন্য বিল করে, কিন্তু এই ব্যবহারটি ইউসেজ ড্যাশবোর্ডে দেখা যায় না।
ডিলিট করার ইউসেজ ড্যাশবোর্ড টাইম-টু-লিভ (TTL) পলিসি দ্বারা সম্পাদিত স্বয়ংক্রিয় মেয়াদোত্তীর্ণ হওয়ার অপারেশনগুলো ধারণ করে না। অনুগ্রহ করে Cloud Monitoring থেকে TTL মেট্রিক্স দেখুন।
Security rule usage
এছাড়াও, Firebase কনসোল একটি ফায়ারবেস সিকিউরিটি রুলস ইভ্যালুয়েশন ড্যাশবোর্ড প্রদান করে, যা রুলস ইনভোকেশনের একটি দরকারি ও একনজরে দেখার মতো চিত্র দেয়। আপনি Cloud Monitoring মাধ্যমেও ফায়ারবেস সিকিউরিটি রুলস-এর ব্যবহার নিরীক্ষণ করতে পারেন। এটি একই রুল ইভ্যালুয়েশন মেট্রিক্স প্রদান করে, সাথে কাস্টম ড্যাশবোর্ড তৈরি, ট্রেন্ড বিশ্লেষণ এবং অ্যালার্ট কনফিগার করার সুবিধাও দেয় (উদাহরণস্বরূপ, যখন প্রত্যাখ্যাত অনুরোধের সংখ্যা হঠাৎ বেড়ে যায়)। উপলব্ধ মেট্রিক্সের সম্পূর্ণ তালিকার জন্য Cloud Monitoring মেট্রিক্স রেফারেন্স দেখুন।
Firebase কনসোলে ক্লাউড ফায়ারস্টোর রুলস মনিটরিং ড্যাশবোর্ড।
Cloud Monitoring মেট্রিক্স
Cloud Monitoring Google Cloud প্রোডাক্টগুলো থেকে মেট্রিক্স, ইভেন্ট এবং মেটাডেটা সংগ্রহ করে। Cloud Firestore কনসোলের ইউসেজ ড্যাশবোর্ড একই মেট্রিক্স ডেটা রিপোর্ট করে। কাস্টম ড্যাশবোর্ড এবং ইউসেজ অ্যালার্ট সেট আপ করতে Cloud Monitoring ব্যবহার করুন।
Cloud Monitoring মধ্যে নিম্নলিখিত Cloud Firestore মেট্রিকগুলো অন্তর্ভুক্ত রয়েছে:
| মেট্রিক নাম | বর্ণনা |
|---|---|
| নথি পড়া | সফলভাবে ডকুমেন্ট রিড করার সংখ্যা। আপনি এই মেট্রিকটিকে রিডের ধরন অনুযায়ী ভাগ করতে পারেন: লুকআপ (LOOKUP) বা কোয়েরি (QUERY)। এই মেট্রিকটিতে ম্যানেজড এক্সপোর্ট বা বাল্ক ডিলিট অপারেশন থেকে প্রাপ্ত রিড অন্তর্ভুক্ত নয়। |
| নথি লেখে | সফলভাবে ডকুমেন্ট লেখার সংখ্যা। আপনি লেখার ধরন অনুযায়ী এই মেট্রিকটি ভাগ করতে পারেন: তৈরি (CREATE) বা আপডেট (UPDATE)। এই মেট্রিকটিতে পরিচালিত আমদানি কার্যক্রম থেকে হওয়া রাইটগুলো অন্তর্ভুক্ত নয়। |
| নথি মুছে ফেলা | সফলভাবে নথি মুছে ফেলার সংখ্যা। |
| সক্রিয় সংযোগ | আপনার ডাটাবেসের সক্রিয় সংযোগের সংখ্যা। প্রতিটি সক্রিয় মোবাইল ও ওয়েব এসডিকে একটিমাত্র সংযোগ বজায় রাখে, যা একাধিক স্ন্যাপশট লিসেনারের মধ্যে শেয়ার করা যায়। সার্ভার ক্লায়েন্ট লাইব্রেরিগুলো প্রতিটি স্ন্যাপশট লিসেনারের জন্য একটি করে সংযোগ তৈরি করে। |
| স্ন্যাপশট শ্রোতারা | সমস্ত সক্রিয় সংযোগ জুড়ে স্ন্যাপশট লিসেনারের সংখ্যা। |
| বেঁচে থাকার সময়কালের সংখ্যা | টাইম-টু-লিভ (TTL) পলিসি দ্বারা মুছে ফেলা নথির মোট সংখ্যা। |
| মেয়াদ শেষ হওয়ার পর মুছে ফেলার বিলম্ব | টাইম-টু-লিভ (TTL) পলিসির অধীনে কোনো ডকুমেন্টের মেয়াদ শেষ হওয়ার পর থেকে সেটি প্রকৃতপক্ষে মুছে ফেলা পর্যন্ত অতিবাহিত সময়। |
- রিয়েলটাইম আপডেট ব্যবহার
রিয়েলটাইম আপডেটের ব্যবহার পরিমাপ করতে সক্রিয় সংযোগ এবং স্ন্যাপশট লিসেনার মেট্রিকগুলো ব্যবহার করুন।
ধরা যাক, একজন ব্যবহারকারী তার ফোনে আপনার অ্যাপটি খুললেন। এরপর অ্যাপটি Cloud Firestore সাথে সংযুক্ত হয় এবং ১০টি কোয়েরিতে সাবস্ক্রাইব করে। এর ফলে আপনার মেট্রিক্সে ১টি সক্রিয় সংযোগ এবং ১০টি স্ন্যাপশট লিসেনার যুক্ত হয়।
- নমুনা হার
Cloud Firestore মেট্রিক্স প্রতি মিনিটে সংগ্রহ করা হয়, কিন্তু আপডেটগুলি আপনার ড্যাশবোর্ডে প্রদর্শিত হতে ৪ মিনিট পর্যন্ত সময় লাগতে পারে।
লেটেন্সি মেট্রিক্স
ব্যাকএন্ড লেটেন্সি মেট্রিকগুলো সাধারণ Google Cloud ফায়ারস্টোর মেট্রিক্সের মাধ্যমে পাওয়া যায়।
উদাহরণস্বরূপ, ক্লাউড কনসোলের মেট্রিক্স এক্সপ্লোরার ভিউতে p50 ল্যাটেন্সির একটি গ্রাফ পাওয়া যাবে।
একটি Cloud Monitoring ড্যাশবোর্ড সেট আপ করুন
পূর্ব-নির্ধারিত ড্যাশবোর্ড দেখতে বা একটি ড্যাশবোর্ড সেট আপ করতে, "মনিটরিং ড্যাশবোর্ড ব্যবহার করুন" দেখুন।
এরপর কী?
- Cloud Monitoring সম্পর্কে আরও জানুন।
- ফায়ারস্টোর পারফরম্যান্স নিরীক্ষণের সর্বোত্তম পদ্ধতি সম্পর্কে জানুন।