توضّح هذه الصفحة كيفية استخدام مقاييس Cloud Monitoring في Cloud Firestore لمراقبة قاعدة البيانات.
مقاييس Cloud Monitoring في Cloud Firestore
تقدّم الأقسام التالية نظرة عامة على المقاييس المتاحة في Cloud Firestore.
الموارد الخاضعة للمراقبة
يمثّل مورد مراقَب في Cloud Monitoring كيانًا منطقيًا أو فعليًا، مثل جهاز افتراضي أو قاعدة بيانات أو تطبيق. تحتوي الموارد الخاضعة للمراقبة على مجموعة فريدة من المقاييس التي يمكن استكشافها أو إعداد تقارير عنها من خلال لوحة بيانات أو استخدامها لإنشاء تنبيهات. يحتوي كل مورد أيضًا على مجموعة من تصنيفات الموارد، وهي أزواج من المفاتيح والقيم تتضمّن معلومات إضافية عن المورد. تتوفّر تصنيفات الموارد لجميع المقاييس المرتبطة بالمورد.
باستخدام الـ Cloud Monitoring API، يتم رصد الأداء Cloud Firestore باستخدام المورد التالي:
| Resources | الوصف |
firestore.googleapis.com/Database | نوع المورد الخاضع للمراقبة الذي يقدّم تفاصيل عن project وlocation وdatabase_id. |
المقاييس
للاطّلاع على قائمة كاملة بمقاييس Cloud Firestore، يُرجى الرجوع إلى Cloud Firestore مقاييس. ويصف القسم التالي بعض المقاييس المتاحة.
مقاييس وقت تشغيل الخدمة
تقدّم serviceruntime
مقاييس نظرة عامة عالية المستوى على عدد الزيارات إلى المشروع. تتوفّر هذه المقاييس
لمعظم Google Cloud APIs. يحتوي نوع المورد المراقَب
consumed_api
على هذه المقاييس الشائعة. يتم أخذ عيّنات من هذه المقاييس كل 30 دقيقة، ما يؤدي إلى تسوية البيانات.
من تصنيفات الموارد المهمة لمقاييس serviceruntime هو method. يمثّل هذا التصنيف طريقة RPC الأساسية التي تم استدعاؤها. قد لا يكون اسم طريقة حزمة تطوير البرامج (SDK) التي تستدعيها هو نفسه اسم طريقة RPC الأساسية. يرجع السبب في ذلك إلى أنّ حزمة تطوير البرامج (SDK) توفّر تجريدًا عالي المستوى لواجهة برمجة التطبيقات. ومع ذلك، عند محاولة فهم كيفية تفاعل تطبيقك مع Cloud Firestore، من المهم فهم المقاييس استنادًا إلى اسم طريقة RPC.
إذا كنت بحاجة إلى معرفة طريقة RPC الأساسية لطريقة معيّنة في حزمة تطوير البرامج (SDK)، يُرجى الرجوع إلى مستندات واجهة برمجة التطبيقات.
api/request_latencies
يقدّم مقياس api/request_latencies توزيعات وقت الاستجابة لجميع الطلبات المكتملة.
Cloud Firestore تسجِّل المقاييس من مكوّن Cloud Firestore Service. تشمل مقاييس وقت الاستجابة الوقت الذي يتلقّى فيه Cloud Firestoreالطلب إلى الوقت الذي ينتهي فيه Cloud Firestore من إرسال الرد، بما في ذلك التفاعلات مع طبقة التخزين. نتيجةً لذلك، لا يتم تضمين وقت استجابة الرحلة الكاملة (rtt) بين العميل وخدمة Cloud Firestore في هذه المقاييس.
مقاييس عمليات المستندات
Cloud Firestore يقدّم عدد عمليات القراءة والكتابة والحذف. يقدّم مقياس الكتابة تفصيلاً بين عمليتَي "الإنشاء" و"التعديل". تتطابق هذه المقاييس مع عمليات CRUD.
يمكن استخدام المقاييس التالية لمعرفة ما إذا كانت قاعدة البيانات تتضمّن عمليات قراءة أو كتابة بشكل كبير، ومعدّل المستندات الجديدة مقابل المستندات المحذوفة.
document/delete_ops_count: عدد عمليات حذف المستندات الناجحةdocument/read_ops_count: عدد عمليات قراءة المستندات الناجحة من طلبات البحث أو عمليات البحثdocument/write_ops_count: عدد عمليات كتابة المستندات الناجحة
مقاييس الفوترة
يمكنك استخدام هذه المقاييس لفهم استخدام الفوترة. لا تتضمّن هذه المقاييس الفوترة الناتجة عن عمليات المشرف (الفهرسة والاستيراد والتصدير والحذف المجمّع).
api/billable_read_units: عدد وحدات القراءة القابلة للفوترة يمكن تقسيم الاستخدام حسب اسم الخدمة وطريقة واجهة برمجة التطبيقات.api/billable_realtime_read_units: عدد وحدات التحديث في الوقت الفعلي القابلة للفوترة من آخر الأخبار في الوقت الفعلي. ينطبق هذا على Cloud Firestore في الوضع الأصلي.api/billable_write_units: عدد وحدات الكتابة القابلة للفوترة يمكن تقسيم الاستخدام حسب اسم الخدمة وطريقة واجهة برمجة التطبيقات.document/billable_managed_delete_write_units: عدد وحدات الكتابة القابلة للفوترة من خدمات الحذف المُدارة، مثل مدة البقاء (TTL).
مقاييس الفهرس
يمكن مقارنة معدّلات كتابة الفهرس بمقياس document/write_ops_count لفهم توسيع الفهرس.
index/write_count: عدد عمليات كتابة الفهرس
مقاييس مدة البقاء (TTL)
تُستخدم مقاييس مدة البقاء (TTL) في Cloud Firestore لمراقبة تأثير سياسة مدة البقاء (TTL) المفروضة.
document/ttl_deletion_count: إجمالي عدد المستندات التي حذفتها خدمات مدة البقاء (TTL)document/ttl_expiration_to_deletion_delays: الوقت المنقضي بين انتهاء صلاحية مستند يتضمّن مدة بقاء (TTL) ووقت حذفه فعليًا
عرض لوحات البيانات المحدّدة مسبقًا وإنشاء لوحات بيانات مخصّصة
Cloud Firestore تتيح لوحات بيانات محدّدة مسبقًا تستخدم مقاييس Cloud Monitoring. يمكنك أيضًا إنشاء لوحات بيانات مخصّصة.
عرض مقاييس استخدام قاعدة البيانات
يمكنك فتح لوحات بيانات الاستخدام في Google Cloud Console للاطّلاع على عمليات قراءة المستندات وكتابتها وحذفها بمرور الوقت.
التحكم في الدخول
تتطلّب لوحات بيانات الاستخدام إذن "إدارة الهوية وإمكانية الوصول" (IAM) monitoring.timeSeries.list.
تمنح أدوار "مالك المشروع" و"محرِّر" و"مُشاهد" هذا الإذن. يمكنك أيضًا منح هذا الإذن
من خلال دور Cloud Monitoring
أو دور مخصّص.
لوحة بيانات استخدام قاعدة البيانات
للاطّلاع على مقاييس استخدام قاعدة بيانات Cloud Firestore، يُرجى اتّباع الخطوات التالية.
في Google Cloud Console، انتقِل إلى صفحة قواعد البيانات.
اختَر قاعدة البيانات المطلوبة من قائمة قواعد البيانات.
في قائمة التنقّل، انقر على الاستخدام.
لوحة بيانات الاستخدام وتقارير الفوترة
تقدّم لوحات بيانات الاستخدام Cloud Firestore في وحدة التحكّم تقديرًا للاستخدام. يمكن أن تساعدك هذه اللوحات في تحديد الارتفاعات المفاجئة في الاستخدام. ومع ذلك، لا تمثّل لوحة البيانات عرضًا دقيقًا للعمليات التي تم تحصيل رسومها. من المرجّح أن يكون الاستخدام الذي تم تحصيل رسومه أعلى. لمراقبة الفوترة، يُرجى الرجوع إلى مقالة مقاييس الفوترة.
في جميع حالات التباين، يكون لتقرير الفوترة الأولوية على لوحة بيانات الاستخدام.
تتسبّب عمليات الاستيراد والتصدير في حدوث اختلافات بين لوحة بيانات الاستخدام والاستخدام الذي تم تحصيل رسومه. لا تظهر عمليات القراءة والكتابة التي يتم إجراؤها من خلال هذه العمليات في لوحة بيانات الاستخدام.
عرض مقاييس أداء قاعدة البيانات
تتضمّن صفحة الرصد في قسم Cloud Firestore في Google Cloud Console لوحات بيانات رصد محدّدة مسبقًا، مثل أوقات استجابة الطلبات (P50 وP99) ورموز الاستجابة وإحصاءات طلبات البحث (P50). يمكنك أيضًا إنشاء لوحة بيانات مخصّصة واحدة كحد أقصى. للوصول إلى صفحة المراقبة لقاعدة بيانات، يُرجى اتّباع الخطوات التالية:
في Google Cloud Console، افتح صفحة Cloud Firestore قواعد البيانات.
اختَر قاعدة بيانات من القائمة.
في قائمة التنقّل، انقر على المراقبة لفتح لوحة بيانات.
إنشاء لوحات بيانات مخصّصة Cloud Monitoring
في Cloud Monitoring، تتيح لك لوحات البيانات المخصّصة عرض المعلومات ذات الصلة بطريقة منظَّمة. على سبيل المثال، يمكنك إنشاء لوحة بيانات لعرض مقاييس الأداء وسياسات التنبيه لمشروعك في بيئة التشغيل الفعلي.
لمزيد من المعلومات عن إعداد لوحة بيانات مخصّصة، يُرجى الرجوع إلى مقالتَي إدارة لوحة بيانات مخصّصة وإضافة أدوات لوحة البيانات.
إنشاء سياسة تنبيه
في Cloud Monitoring، يمكنك إنشاء تنبيهات لإعلامك عند حدوث تغيير في حالة المقياس. يمكنك استخدام هذه التنبيهات لتلقّي إشعارات بالمشاكل المحتمَلة قبل أن تؤثّر في المستخدمين.
لمزيد من المعلومات عن إنشاء التنبيهات، يُرجى الرجوع إلى مقالة إنشاء سياسات التنبيه المستندة إلى عتبة المقياس.
انظر المثال التالي الذي ننشئ فيه سياسة تنبيه بشأن وقت الاستجابة. تتحقّق سياسة التنبيه من وقت الاستجابة في المئوية 99 خلال فترة زمنية متحرّكة مدتها 5 دقائق. إذا ظلّ وقت الاستجابة في المئوية 99 أعلى من 250 ملّي ثانية لمدة 5 دقائق، يتم تفعيل التنبيه.
وحدة التحكم
في Google Cloud Console، انتقِل إلى صفحة المراقبة ، ثم انقر على notifications التنبيهات.
انقر على إنشاء سياسة.
اختَر مقياس أوقات استجابة الطلبات من مورد Consumed API.
أضِف فلتر خدمة لـ
firestore.googleapis.comلقواعد بيانات Firestore في الوضع الأصلي.انقر على التالي لضبط المشغِّل.
اختَر أنواع الشروط على أنّها العتبة.
يتم ضبط شرط العتبة على قيمة عتبة تبلغ 250 ملّي ثانية. يتم تفعيل تنبيه عندما تظلّ قيمة وقت الاستجابة في المئوية 99 كما هي طوال فترة النافذة المتدحرجة (5 دقائق).
اضبط قيمة العتبة على 250.
انقر على التالي لضبط الإشعارات.
اضبط اسم سياسة التنبيه وانقر على التالي.
راجِع إعدادات التنبيه وانقر على إنشاء سياسة.
عميل مُحتمَل بنظر فريق التسويق (MQL)
يمكنك تنفيذ سياسة التنبيه نفسها بشأن وقت الاستجابة باستخدام طلب بحث بلغة طلبات المراقبة (MQL). لمزيد من الأمثلة عن استخدام MQL، يُرجى الرجوع إلى مقالة أمثلة على طلبات بحث بلغة MQL.
fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
[value_request_latencies_percentile:
percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'