ফায়ারবেস অ্যালার্ট কনফিগার করতে এবং সেগুলোকে কাস্টম নোটিফিকেশন চ্যানেলে পাঠাতে দুটি বিকল্প প্রদান করে।
(সুপারিশকৃত) কাস্টম নোটিফিকেশন চ্যানেলগুলিতে কাস্টম অ্যালার্ট সেট আপ করুন এবং পাঠান।
আপনি Cloud Monitoring ব্যবহার করে Crashlytics ডেটা এবং (ঐচ্ছিকভাবে) Cloud Logging এ এক্সপোর্ট করা ফায়ারবেস সেশন ডেটার উপর ভিত্তি করে কাস্টম নোটিফিকেশন চ্যানেলে সম্পূর্ণ কাস্টমাইজড অ্যালার্ট পাঠাতে পারেন।
ডিফল্ট Crashlytics অ্যালার্টগুলি কাস্টম নোটিফিকেশন চ্যানেলে পাঠান
আপনি Cloud Functions ব্যবহার করে ডিফল্ট Crashlytics অ্যালার্টগুলোকে কাস্টম নোটিফিকেশন চ্যানেলে পাঠাতে পারেন।
(সুপারিশকৃত) কাস্টম নোটিফিকেশন চ্যানেলগুলিতে কাস্টম অ্যালার্ট সেট আপ করুন এবং পাঠান।
ফায়ারবেস ডিফল্ট Crashlytics অ্যালার্ট প্রদান করে ( অ্যালার্টিং ওভারভিউ পৃষ্ঠাটি দেখুন)। তবে, এই ডিফল্ট অ্যালার্ট এবং এগুলোর নোটিফিকেশন চ্যানেল আপনার প্রয়োজনের জন্য যথেষ্ট নাও হতে পারে।
এইসব ক্ষেত্রে, আপনি Cloud Logging এ এক্সপোর্ট করা Crashlytics ডেটার (এবং ঐচ্ছিকভাবে ফায়ারবেস সেশন ডেটার) উপর ভিত্তি করে কাস্টম নোটিফিকেশন চ্যানেলে কাস্টম অ্যালার্ট পাঠাতে Cloud Monitoring ব্যবহার করতে পারেন।
কাস্টম অ্যালার্টের জন্য Cloud Monitoring ব্যবহার করতে, আপনাকে একটি অ্যালার্টিং পলিসি সেট আপ করতে হবে, যেখানে বর্ণনা করা থাকে কোন পরিস্থিতিতে আপনি অ্যালার্ট পেতে চান এবং কীভাবে বিজ্ঞপ্তি পেতে চান।
উদাহরণস্বরূপ, যদি আপনার ক্র্যাশ-মুক্ত হার একটি নির্দিষ্ট থ্রেশহোল্ডের নিচে নেমে যায়, তাহলে Cloud Monitoring একটি নির্দিষ্ট ইমেল ঠিকানায় একটি কাস্টমাইজড অ্যালার্ট বার্তা পাঠাতে পারে অথবা ডিসকর্ড, স্ল্যাক বা জিরা-র মতো কোনো থার্ড-পার্টি পরিষেবাতে এটি পোস্ট করতে পারে। এছাড়াও আপনি অ্যালার্টে পাঠানো তথ্য সম্পূর্ণরূপে কাস্টমাইজ করতে পারেন, যেমন Firebase কনসোলের সহায়ক ডিপ-লিঙ্ক বা কোম্পানি-নির্দিষ্ট সমস্যা সমাধানের তথ্য অন্তর্ভুক্ত করা।
Google Cloud ডকুমেন্টেশনে, মূল্য নির্ধারণ সহ Cloud Monitoring ও অ্যালার্ট সম্পর্কে আরও জানুন।
পূর্বশর্ত
আপনার Firebase প্রজেক্টটি যেন Blaze-এর পে-অ্যাজ-ইউ-গো প্রাইসিং প্ল্যানের অন্তর্ভুক্ত থাকে, তা নিশ্চিত করুন।
Crashlytics ডেটা এবং (ঐচ্ছিকভাবে) ফায়ারবেস সেশন ডেটা Cloud Logging -এ এক্সপোর্ট করার ব্যবস্থা করুন।
একটি সতর্কীকরণ নীতি সেট আপ করুন
নিম্নলিখিতগুলি হলো প্রাথমিক স্তরের নির্দেশাবলী; বিস্তারিত নির্দেশাবলীর জন্য, Google Cloud ডকুমেন্টেশন দেখুন (উদাহরণস্বরূপ: মেট্রিক-থ্রেশহোল্ড অ্যালার্টিং পলিসি তৈরি করুন অথবা অ্যালার্টিং পলিসি তৈরি করতে PromQL ব্যবহার করুন )।
কোয়েরি চালানোর অংশ হিসেবে, আপনি একটি লগ-ভিত্তিক অ্যালার্ট অথবা একটি SQL-ভিত্তিক অ্যালার্ট সেট আপ করতে পারেন:
লগ-ভিত্তিক অ্যালার্ট সেট আপ করুন:
Logs Explorer এ একটি কোয়েরি চালান।
প্রদর্শিত হওয়া 'অ্যাড অ্যালার্ট' বাটনটিতে ক্লিক করুন।
লগ-ভিত্তিক অ্যালার্ট যোগ করতে স্ক্রিনে দেওয়া নির্দেশাবলী অনুসরণ করুন।
SQL-ভিত্তিক অ্যালার্ট সেট আপ করুন:
লগস অ্যানালিটিক্স- এ একটি কোয়েরি চালান।
প্রদর্শিত হওয়া 'অ্যাড অ্যালার্ট' বাটনটিতে ক্লিক করুন।
SQL-ভিত্তিক অ্যালার্ট যোগ করতে স্ক্রিনে দেওয়া নির্দেশাবলী অনুসরণ করুন।
বিকল্পভাবে, আপনি Google Cloud কনসোলে থাকা পলিসি কনফিগারেশন টুল ব্যবহার করে আপনার লগ-ভিত্তিক মেট্রিকগুলোর জন্য অ্যালার্ট সেট আপ করতে পারেন, যেখানে আপনি নিম্নলিখিত অপশনগুলোর মধ্যে একটি বেছে নিতে পারবেন:
বিল্ডার : কনসোল UI অ্যালার্টিং পলিসি তৈরি করার জন্য একটি নির্দেশিত কর্মপ্রবাহ প্রদান করে।
PromQL : আপনি আপনার অ্যালার্টিং পলিসির জন্য একটি PromQL কোয়েরি প্রদান করেন।
উদাহরণস্বরূপ, ধরুন আপনি আপনার এক্সপোর্ট করা Crashlytics এবং Firebase সেশন ডেটার জন্য দুটি লগ-ভিত্তিক মেট্রিক তৈরি করেছেন:
firebase/crashlytics_eventsনামের একটি মেট্রিক রয়েছে যার লেবেল হলোerrorType, এবং এটি নিম্নরূপে সংজ্ঞায়িত করা হয়েছে:logName="projects/ PROJECT_ID /logs/firebasecrashlytics.googleapis.com%2Fevents"firebase/session_eventsনামের আরেকটি মেট্রিক, যার লেবেল `eventType, এবং এটি নিম্নরূপে সংজ্ঞায়িত করা হয়েছে:logName="projects/ PROJECT_ID /logs/firebasecrashlytics.googleapis.com%2Fsession_events"
আপনার ক্র্যাশ-ফ্রি রেট ৭০%-এর নিচে নেমে গেলে অ্যালার্ট দেওয়ার জন্য এই লগ-ভিত্তিক মেট্রিকগুলো ব্যবহার করে তৈরি একটি PromQL কোয়েরির উদাহরণ নিচে দেওয়া হলো:
1 - (sum by (project_id) (rate({__name__="logging.googleapis.com/user/firebase/crashlytics_events", errorType="FATAL"}[5m])) / sum by (project_id) (rate({__name__="logging.googleapis.com/user/firebase/session_events", eventType="SESSION_START"}[5m])) ) < 0.7
ডিফল্ট Crashlytics অ্যালার্টগুলি কাস্টম নোটিফিকেশন চ্যানেলে পাঠান
Firebase ডিফল্ট Crashlytics অ্যালার্ট প্রদান করে ( অ্যালার্টিং অপশন ওভারভিউ পৃষ্ঠায় তালিকাটি দেখুন)। তবে, এই ডিফল্ট অ্যালার্ট এবং এদের নোটিফিকেশন চ্যানেলের তথ্য আপনার প্রয়োজনের জন্য যথেষ্ট নাও হতে পারে।
এইসব ক্ষেত্রে, আপনি এই ডিফল্ট Crashlytics অ্যালার্টগুলোকে কাস্টম নোটিফিকেশন চ্যানেলে পাঠাতে Cloud Functions for Firebase ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনি এমন একটি ফাংশন লিখতে পারেন যা ভেলোসিটি অ্যালার্টের জন্য একটি অ্যালার্ট ইভেন্ট ক্যাপচার করে এবং অ্যালার্টের তথ্য ডিসকর্ড, স্ল্যাক বা জিরার মতো কোনো থার্ড-পার্টি সার্ভিসে পোস্ট করে।
With this advanced alerting mechanism, you can also customize the information sent to the third-party service. For example, in addition to the default information provided by Firebase, you can also include helpful deep-links into the Firebase console or company-specific troubleshooting information.
Cloud Functions for Firebase ব্যবহার করে উন্নত অ্যালার্টিং ব্যবস্থা সেট আপ করতে, এই ধাপগুলো অনুসরণ করুন:
Firebase-এর জন্য ক্লাউড ফাংশন সেট আপ করুন , যার মধ্যে নিম্নলিখিত কাজগুলো অন্তর্ভুক্ত রয়েছে:
- Node.js বা Python-এর জন্য একটি ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করুন।
- Firebase CLI ইনস্টল করুন এবং সাইন ইন করুন।
- Firebase CLI ব্যবহার করে Cloud Functions for Firebase চালু করুন।
এমন একটি ফাংশন লিখুন এবং স্থাপন করুন যা Crashlytics থেকে একটি অ্যালার্ট ইভেন্ট গ্রহণ করে এবং ইভেন্টের পেলোড পরিচালনা করে (উদাহরণস্বরূপ, ডিসকর্ডে একটি বার্তায় অ্যালার্টের তথ্য পোস্ট করে)।
আপনি ক্যাপচার করতে পারেন এমন সমস্ত Crashlytics অ্যালার্ট ইভেন্ট সম্পর্কে জানতে, Crashlytics অ্যালার্টের রেফারেন্স ডকুমেন্টেশনে যান।
Cloud Functions for Firebase ব্যবহার করে Crashlytics অ্যালার্ট পরিচালনা সম্পর্কে আরও জানুন।