ما يجب مراقبته

Edge for Private Cloud ‏v4.18.01

بشكل عام، في عملية الإعداد للإنتاج، يجب تفعيل آليات المراقبة ضمن عملية نشر Apigee Edge للسحابة الإلكترونية الخاصة. وتُحذّر أساليب المراقبة هذه مشرفي الشبكة (أو مشغّليها) من حدوث خطأ أو تعذّر. يتم تسجيل كل خطأ يتم إنشاؤه على أنّه تنبيه في Apigee Edge. لمزيد من المعلومات عن التنبيهات، يُرجى الاطّلاع على أفضل الممارسات المتعلّقة بالمراقبة.

لتسهيل الأمر، يتم تصنيف مكوّنات Apigee بشكل أساسي إلى فئتين:

  • خدمات Java Server الخاصة بخدمة Apigee: تشمل هذه الخدمات Management Server وMessage Processor وQpid Server وPostgres Server.
  • الخدمات التابعة لجهات خارجية: تشمل هذه الخدمات Nginx Router وApache Cassandra وApache ZooKeeper وOpenLDAP وقاعدة بيانات PostgreSQL وQpid.

في عملية النشر على الموقع الإلكتروني من Apigee Edge، يقدّم الجدول التالي نظرة سريعة على المَعلمات التي يمكنك تتبُّعها:

المكوّن

عمليات التحقّق من النظام

الإحصاءات على مستوى العملية

عمليات التحقّق على مستوى واجهة برمجة التطبيقات

عمليات التحقّق من مسار الرسائل

المكوّنات المحدّدة

خدمات Java الخاصة بخدمة Apigee

خادم الإدارة

؟

؟

؟

معالج الرسائل

؟

؟

؟

؟

خادم Qpid

؟

؟

؟

خادم Postgres

؟

؟

؟

الخدمات التابعة لجهات خارجية

Apache Cassandra

؟

؟

Apache ZooKeeper

؟

؟

OpenLDAP

؟

؟

قاعدة بيانات PostgreSQL

؟

؟

Qpid

؟

؟

توجيه Nginx

؟

؟

؟

بشكل عام، بعد تثبيت Apigee Edge، يمكنك تنفيذ مهام المراقبة التالية لتتبُّع أداء عملية تثبيت Apigee Edge لـ Private Cloud.

عمليات التحقّق من صحة النظام

من المهم جدًا قياس مَعلمات صحة النظام، مثل استخدام وحدة المعالجة المركزية (CPU) واستخدام الذاكرة وإمكانية اتصال المنفذ، على مستوى أعلى. يمكنك مراقبة المَعلمات التالية للحصول على أساسيات حالة النظام:

  • استخدام وحدة المعالجة المركزية: يحدِّد الإحصاءات الأساسية (المستخدم/النظام/إدخال/إخراج في وضع الانتظار/الخمول) عن استخدام وحدة المعالجة المركزية. على سبيل المثال، إجمالي وحدة المعالجة المركزية المستخدَمة من قِبل النظام.
  • الذاكرة المتاحة/المستخدَمة: لتحديد استخدام ذاكرة النظام بالبايت على سبيل المثال، الذاكرة الفعلية التي يستخدمها النظام.
  • استخدام مساحة القرص: لتحديد معلومات نظام الملفات استنادًا إلى استخدام القرص الحالي على سبيل المثال، مساحة القرص الصلب التي يستخدمها النظام.
  • متوسط الحمل: يحدِّد عدد العمليات التي في انتظار التشغيل.
  • إحصاءات الشبكة: حِزم الشبكة و/أو وحدات البايت المُرسَلة والمُستلَمة، بالإضافة إلى أخطاء الإرسال المتعلّقة بمكوّن محدّد

عمليات التحقّق من التطبيقات/العمليات

على مستوى العملية، يمكنك الاطّلاع على معلومات مهمة عن جميع العمليات التي تعمل. على سبيل المثال، تشمل هذه الإحصاءات إحصاءات استخدام الذاكرة ووحدة المعالجة المركزية (CPU) التي تستخدمها عملية أو تطبيق. بالنسبة إلى العمليات مثل qpidd وpostgres postmaster وjava وما إلى ذلك، يمكنك تتبُّع موارد المعالجة التالية:

  • تحديد العملية: حدِّد عملية Apigee معيّنة. على سبيل المثال، يمكنك مراقبة توفّر عملية Java لخادم Apigee.
  • إحصاءات المواضيع: يمكنك عرض أنماط المواضيع الأساسية التي تستخدمها إحدى العمليات. على سبيل المثال، يمكنك مراقبة العدد الأقصى لعدد سلاسل المحادثات وعدد سلاسل المحادثات لجميع العمليات.
  • استخدام الذاكرة: يمكنك الاطّلاع على استخدام الذاكرة لجميع عمليات Apigee. على سبيل المثال، يمكنك مراقبة المَعلمات، مثل استخدام ذاكرة الشريحة، واستخدام الذاكرة غير الشريحة المستخدَم في إحدى العمليات.

عمليات التحقّق على مستوى واجهة برمجة التطبيقات

على مستوى واجهة برمجة التطبيقات، يمكنك مراقبة ما إذا كان الخادم قيد التشغيل لطلبات البيانات المتكرّرة من واجهة برمجة التطبيقات التي توفّر لها Apigee خدمة الوكيل. على سبيل المثال، يمكنك إجراء فحص واجهة برمجة التطبيقات على "خادم الإدارة" و"جهاز التوجيه" و"معالج الرسائل" من خلال استدعاء الأمر cURL التالي:

curl http://<host>:<port>/v1/servers/self/up

حيث يكون <host> هو عنوان IP لمكوّن Apigee Edge. يخصّ رقم <port> كل مكوّن من مكوّنات Edge. على سبيل المثال:

خادم الإدارة: 8080

  • جهاز التوجيه: 8081
  • معالج الرسائل: 8082
  • إلخ

اطّلِع على الأقسام الفردية أدناه للحصول على معلومات عن تشغيل هذا الأمر لكل مكوّن.

تعرض هذه الدعوة "صحيح" و "خطأ". للحصول على أفضل النتائج، يمكنك أيضًا إصدار طلبات بيانات من واجهة برمجة التطبيقات مباشرةً في الخلفية (التي يتفاعل معها برنامج Apigee) من أجل تحديد ما إذا كان هناك خطأ في بيئة برنامج Apigee أو في الخلفية بسرعة.

ملاحظة: لمراقبة الوكلاء لـ API، يمكنك أيضًا استخدام ميزة "صحة واجهة برمجة التطبيقات" في Apigee. تُجري ميزة "صحة واجهة برمجة التطبيقات" طلبات مجدوَلة إلى وكلاء واجهة برمجة التطبيقات وتُعلمك عند تعذُّر إجرائها وسبب تعذُّرها. عند نجاح طلبات البيانات، تعرض لك ميزة "صحة واجهة برمجة التطبيقات" أوقات الاستجابة ويمكنها أيضًا إعلامك عندما يكون وقت استجابة الطلب مرتفعًا. يمكن لواجهة برمجة التطبيقات Health إجراء مكالمات من مواقع جغرافية مختلفة حول العالم لمقارنة سلوك واجهة برمجة التطبيقات بين المناطق.

عمليات التحقّق من مسار الرسائل

يمكنك جمع بيانات من أجهزة التوجيه ومعالجات الرسائل حول تدفق الرسائل وأنماطها/إحصاءاتها. يتيح لك ذلك مراقبة ما يلي:

  • عدد العملاء النشطين
  • عدد الردود (10 أضعاف و20 ضعفًا و30 ضعفًا و40 ضعفًا و50 ضعفًا)
  • حالات تعذُّر الاتصال

يساعدك ذلك في توفير لوحات بيانات لتدفّق رسائل واجهة برمجة التطبيقات. لمزيد من المعلومات، يُرجى الاطّلاع على:

التحقّق من حالة جهاز توجيه "معالج الرسائل"

ينفِّذ "الموجّه" آلية التحقّق من الصحة لتحديد "معالجات الرسائل" التي تعمل على النحو المتوقّع. إذا تم رصد أنّ "معالج الرسائل" غير متاح أو بطيء، يمكن لـ "جهاز التوجيه" إيقاف "معالج الرسائل" تلقائيًا من عملية التناوب. في هذه الحالة، يكتب "الموجّه" رسائل "الترميز" في ملف سجلّ "الموجّه" على العنوان /opt/apigee/var/log/edge-router/logs/system.log.

يمكنك مراقبة ملف سجلّ جهاز التوجيه بحثًا عن هذه الرسائل. على سبيل المثال، إذا أزال جهاز التوجيه أحد معالجي الرسائل من عملية التناوب، يكتب الرسالة في السجلّ بالشكل التالي:

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = <MP_IP> at 1399409512159

2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /<MP_IP>:<PORT> Mark Down

حيث يكون ‎/<MP_IP>:<PORT> هو عنوان IP و رقم منفذ "معالج الرسائل".

إذا أجرى "الموجّه" لاحقًا عملية التحقّق من الصحة وتبيّن له أنّ "معالج الرسائل" يعمل بشكلٍ سليم، سيعيد "الموجّه" تلقائيًا "معالج الرسائل" إلى عملية التناوب. يكتب الموجه أيضًا رسالة "وضع علامة" في السجلّ على النحو التالي:

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = <IP> at 1399410449054

2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from /<IP>:<PORT> Mark Up