فایربیس دو گزینه برای پیکربندی هشدارها و ارسال آنها به کانالهای اعلان سفارشی ارائه میدهد.
(توصیه میشود) تنظیم و ارسال هشدارهای سفارشی به کانالهای اعلان سفارشی
شما میتوانید از Cloud Monitoring برای ارسال هشدارهای کاملاً سفارشی به کانالهای اعلان سفارشی بر اساس دادههای Crashlytics و (اختیاری) دادههای جلسات Firebase که به Cloud Logging صادر کردهاید، استفاده کنید.
ارسال هشدارهای پیشفرض Crashlytics به کانالهای اعلان سفارشی
شما میتوانید Cloud Functions برای ارسال هشدارهای پیشفرض Crashlytics به کانالهای اعلان سفارشی استفاده کنید.
(توصیه میشود) تنظیم و ارسال هشدارهای سفارشی به کانالهای اعلان سفارشی
فایربیس هشدارهای پیشفرض Crashlytics را ارائه میدهد (به صفحه مرور کلی هشدارها مراجعه کنید). با این حال، این هشدارهای پیشفرض و کانالهای اعلان آنها ممکن است برای نیازهای شما کافی نباشند.
در این موارد، میتوانید از Cloud Monitoring برای ارسال هشدارهای سفارشی به کانالهای اعلان سفارشی بر اساس دادههای Crashlytics (و به صورت اختیاری دادههای جلسات Firebase) که به Cloud Logging صادر کردهاید، استفاده کنید.
برای استفاده از Cloud Monitoring برای هشدارهای سفارشی، شما یک سیاست هشداردهی تنظیم میکنید که شرایطی را که میخواهید تحت آن هشدار دریافت کنید و نحوه اطلاعرسانی را شرح میدهد.
برای مثال، اگر نرخ بدون خرابی شما از یک آستانه خاص پایینتر برود، Cloud Monitoring میتواند یک پیام هشدار سفارشی به یک آدرس ایمیل خاص ارسال کند یا آن را به یک سرویس شخص ثالث مانند Discord، Slack یا Jira ارسال کند. همچنین میتوانید اطلاعات ارسال شده در هشدار را کاملاً سفارشی کنید، مانند افزودن لینکهای مفید به کنسول Firebase یا اطلاعات عیبیابی خاص شرکت.
در مستندات Google Cloud ، درباره Cloud Monitoring و هشدارها ، از جمله قیمتگذاری، اطلاعات بیشتری کسب کنید.
پیشنیازها
مطمئن شوید که پروژه Firebase شما در طرح قیمتگذاری Blaze با پرداخت به ازای استفاده قرار دارد.
تنظیم سیاست هشداردهی
موارد زیر دستورالعملهای سطح بالا هستند؛ برای دستورالعملهای دقیق، به مستندات Google Cloud مراجعه کنید (برای مثال: ایجاد سیاستهای هشداردهی با آستانه متریک یا استفاده از PromQL برای ایجاد سیاستهای هشداردهی ).
به عنوان بخشی از اجرای کوئریها، میتوانید یک هشدار مبتنی بر لاگ یا یک هشدار مبتنی بر SQL تنظیم کنید:
یک هشدار مبتنی بر گزارش تنظیم کنید:
یک پرسوجو (query) را در Logs Explorer اجرا کنید.
روی دکمهی «افزودن هشدار» که ظاهر میشود کلیک کنید.
برای افزودن هشدار مبتنی بر گزارش، دستورالعملهای روی صفحه را دنبال کنید.
یک هشدار مبتنی بر SQL تنظیم کنید:
یک کوئری در Logs Analytics اجرا کنید.
روی دکمهی «افزودن هشدار» که ظاهر میشود کلیک کنید.
برای افزودن هشدار مبتنی بر SQL، دستورالعملهای روی صفحه را دنبال کنید.
از طرف دیگر، میتوانید با استفاده از ابزار پیکربندی خطمشی در کنسول Google Cloud ، هشدارهایی را برای معیارهای مبتنی بر گزارش خود تنظیم کنید، جایی که میتوانید یکی از گزینههای زیر را انتخاب کنید:
سازنده : رابط کاربری کنسول، یک گردش کار هدایتشده برای ساخت سیاست هشداردهی ارائه میدهد.
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 به کانالهای اعلان سفارشی
فایربیس هشدارهای پیشفرض Crashlytics را ارائه میدهد (به لیست موجود در صفحه نمای کلی گزینههای هشدار مراجعه کنید). با این حال، اطلاعات موجود در این هشدارهای پیشفرض و کانالهای اعلان آنها ممکن است برای نیازهای شما کافی نباشد.
در این موارد، میتوانید Cloud Functions for Firebase برای ارسال این هشدارهای پیشفرض Crashlytics به کانالهای اعلان سفارشی استفاده کنید. به عنوان مثال، میتوانید تابعی بنویسید که یک رویداد هشدار را برای هشدارهای سرعت ثبت کند و اطلاعات هشدار را به یک سرویس شخص ثالث مانند Discord، Slack یا Jira ارسال کند.
با این مکانیزم هشدار پیشرفته، میتوانید اطلاعات ارسالی به سرویس شخص ثالث را نیز سفارشی کنید. به عنوان مثال، علاوه بر اطلاعات پیشفرض ارائه شده توسط Firebase، میتوانید لینکهای مفید به کنسول Firebase یا اطلاعات عیبیابی مخصوص شرکت را نیز اضافه کنید.
برای تنظیم قابلیتهای پیشرفته هشدار با استفاده Cloud Functions for Firebase ، این مراحل را دنبال کنید:
توابع ابری را برای Firebase تنظیم کنید ، که شامل وظایف زیر است:
- یک محیط توسعه برای Node.js یا Python تنظیم کنید.
- Firebase CLI را نصب و وارد آن شوید.
- با استفاده از رابط خط فرمان Firebase CLI) Cloud Functions for Firebase مقداردهی اولیه کنید.
تابعی بنویسید و پیادهسازی کنید که یک رویداد هشدار را از Crashlytics دریافت کرده و بار داده رویداد را مدیریت کند (برای مثال، اطلاعات هشدار را در پیامی در Discord ارسال کند).
برای کسب اطلاعات در مورد تمام رویدادهای هشدار Crashlytics که میتوانید ضبط کنید، به مستندات مرجع مربوط به هشدارهای Crashlytics مراجعه کنید.
درباره مدیریت هشدارهای Crashlytics با استفاده از Cloud Functions for Firebase بیشتر بدانید