چند راه مختلف برای نظارت بر عملکرد Firebase Realtime Database و شناسایی مشکلات احتمالی در برنامه شما وجود دارد. نگاهی به پهنای باند و بارگذاری ورودی و خروجی برنامه شما همچنین می تواند به شما ایده دهد که چه چیزی در صورتحساب خود انتظار دارید. علاوه بر این، اگر مشکلی به نظر می رسد، گرفتن تصویری واضح از عملکرد پایگاه داده شما می تواند یک ابزار عیب یابی مفید باشد.
این صفحه نظارت بر عملکرد Realtime Database را مورد بحث قرار می دهد. برای نظارت بر استفاده، به استفاده از پایگاه داده نظارت مراجعه کنید.
از ابزارهای نظارت Realtime Database استفاده کنید
بسته به سطح جزئیاتی که نیاز دارید، میتوانید اطلاعات مربوط به عملکرد Realtime Database خود را از طریق چند ابزار مختلف جمعآوری کنید.
از ابزار نمایه ساز Realtime Database استفاده کنید
ابزار نمایه ساز Realtime Database یک نمای کلی از عملیات خواندن/نوشتن در پایگاه داده شما ارائه می دهد. این گزارش شامل اطلاعاتی در مورد سرعت و اندازه بار هر عملیات، علاوه بر پرس و جوهای فهرست نشده است. با این حال، این شامل اطلاعات تاریخی یا هیچ آماری درباره سربار اتصال نیست و نباید برای تخمین هزینههای صورتحساب استفاده شود .
برای کسب اطلاعات بیشتر در مورد استفاده از ابزار profiler، به نمایه پایگاه داده خود مراجعه کنید.
از کنسول Firebase استفاده کنید
برگه Usage در کنسول Firebase اطلاعاتی در مورد اتصالات همزمان به پایگاه داده شما، مقدار داده ای که ذخیره می کنید، پهنای باند خروجی (شامل سربار پروتکل و رمزگذاری) و بارگذاری پایگاه داده شما در فواصل زمانی 1 دقیقه ای را ارائه می دهد. در حالی که برگه Usage نمای کلی دقیق تری از عملکرد کلی پایگاه داده را به شما ارائه می دهد، ممکن است نتوانید به اندازه کافی برای عیب یابی مشکلات عملکرد بالقوه آن را بررسی کنید.
از Cloud Monitoring استفاده کنید
با Cloud Monitoring از Google Cloud ، میتوانید از Metrics Explorer برای مشاهده معیارهای عملکرد فردی استفاده کنید یا داشبوردهای مختلفی با نمودارهایی ایجاد کنید که ترکیبهای مختلفی از معیارهای عملکرد را در طول زمان نشان میدهند. ادغام Realtime Database با Cloud Monitoring عمیق ترین سطح جزئیات را ارائه می دهد.
مراحل راه اندازی Cloud Monitoring در Monitor Usage پایگاه داده توضیح داده شده است.
برای نکاتی در مورد استفاده از معیارهای خاص Cloud Monitoring برای تشخیص مشکلات عملکرد، بخشهای زیر را ببینید.
نظارت بر عملکرد در Cloud Monitoring
اگر با مشکلاتی از جمله عملکرد یا تأخیر مواجه هستید، ممکن است بخواهید از Cloud Monitoring برای نظارت بر معیارهای زیر استفاده کنید. توجه داشته باشید که همه نامهای نوع متریک با firebasedatabase.googleapis.com/
پیشوند هستند.
نام متریک | توضیحات |
---|---|
بارگذاری پایگاه داده | |
شبکه برای بیش از حد غیرفعال است | |
ذخیره سازی برای افراد بیش از حد غیرفعال است | |
معیارها را در نمودارهای داشبورد خود برای اطلاعات بینش و مرورهای مفید ترکیب کنید. به عنوان مثال، ترکیب های زیر را امتحان کنید:
- عملیات: از متریک
io/database_load
استفاده کنید تا ببینید چه مقدار از کل بار پایگاه داده شما توسط هر نوع عملیات استفاده می شود. برای عیبیابی انواع عملیات، حتماًio/database_load
بر اساس نوع گروهبندی کنید. - فضای ذخیرهسازی: از
storage/limit
وstorage/total_bytes
برای نظارت بر میزان استفاده از فضای ذخیرهسازی خود در رابطه با محدودیتهای ذخیرهسازی Realtime Database استفاده کنید. همچنین میتوانیدstorage/disabled_for_overages
اضافه کنید تا ببینید آیا برنامهتان در نتیجه بیش از حد محدودیتهای فضای ذخیرهسازی، زمان از کار افتادن دارد یا خیر. - سربار SSL: از
network/https_requests_count
برای نظارت بر تعداد درخواست های اتصال SSL که پایگاه داده شما دریافت کرده است استفاده کنید و درخواست هایی را که از یک بلیط جلسه SSL موجود با فیلترreused_ssl_session
مجددا استفاده کرده اند جدا کنید. میتوانید این مقدار را باnetwork/sent_bytes_count
وnetwork/sent_payload_and_protocol_bytes_count
اندازهگیری کنید تا نظارت کنید آیا برنامه شما از بلیطهای جلسه SSL به طور موثر استفاده میکند یا خیر.
همچنین میتوانید هشدارها را از طریق Cloud Monitoring تنظیم کنید و اعلانها را بر اساس معیارهای Realtime Database دریافت کنید. به عنوان مثال، اگر io/database_load
شما به آستانه خاصی نزدیک می شود، می توانید انتخاب کنید که اعلان دریافت کنید.
فهرست کامل معیارهای Realtime Database در دسترس از طریق Cloud Monitoring را ببینید.
انواع بارگذاری پایگاه داده
متریک io/database_load
همچنین برچسبی را ارائه می دهد که نوع عملیات باعث بارگیری شده است. در زیر انواع احتمالی عملیات اندازه گیری شده است:
-
admin
: عملیات مدیریت مانند تنظیم قوانین و خواندن ابرداده پروژه. -
auth
: تأیید احراز هویت از حسابهای سرویس یا احراز هویت Firebase برای یک مشتری. -
client_management
: مدیریت افزودن و حذف اتصالات همزمان که شامل اجرای عملیات قطع اتصال در هنگام حذف است. -
get_shallow
: بازیابی دادهها از REST GET باshallow=true
. -
get
: مدیریت عملیات REST GET. -
listen
: بازیابی داده های اولیه برای عملیاتon
وonce
از کلاینت های متصل. -
on_disconnect
: ثبت نام در عملیات قطع اتصال از مشتریان. -
put
: انجام عملیاتset
از مشتریان یا عملیات REST PUT. -
transaction
: انجام تراکنش ها از درخواست های REST مشروط یا عملیاتtransaction
از مشتری. -
update
: رسیدگی به عملیاتupdate
یا درخواست های REST PATCH.
نظارت بر قوانین امنیتی در Cloud Monitoring
شما همچنین می توانید ارزیابی قوانین امنیتی را تجزیه و تحلیل کنید. توجه داشته باشید که همه نامهای نوع متریک با firebasedatabase.googleapis.com/
پیشوند هستند.
نام متریک | توضیحات |
---|---|
ارزیابی قوانین | rules/evaluation_count . تعداد ارزیابیهای قوانین پایگاه داده بیدرنگ در پاسخ به درخواستهای نوشتن یا خواندن انجام شده است. میتوانید این معیار را با نتیجه درخواست (اجازه، رد یا خطا) تقسیم کنید. |
نمودار Cloud Monitoring خود را در صورت نیاز برای ارزیابی قوانین تنظیم کنید، برای مثال با فیلتر کردن نتایج ارزیابی خاص، ALLOW، DENY یا ERROR. تنظیم و سفارشی کردن نمودارها در مانیتور استفاده از پایگاه داده پوشش داده شده است.
فهرست کامل معیارهای Realtime Database در دسترس از طریق Cloud Monitoring را ببینید.