يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات
Apigee X. المعلومات
المشكلة
لا تتوفّر بيانات "إحصاءات Google" في واجهة مستخدم Edge بسبب عدم نقل خادم Qpidd لرسائل الإحصاءات إلى PostgreSQL. في متصفّح Edge، يتجاوب المكوِّن edge-qpid-server
مع خادم Qpidd.
يحتفظ Qpidd بقائمة انتظار لكل مجموعة تحليلات:
ax-q-axgroup001-consumer-group-001
تحتوي قائمة الانتظار هذه على رسائل الإحصاءات المرسلة من معالجات الرسائل وأجهزة التوجيه. يتم سحب الرسائل من هنا من خلال
edge-qpid-server
التي تحلّل الرسائل وتدخلها في PostgreSQL. بعد معالجة الرسائل بنجاح، تتم إزالتها من قائمة الانتظار.ax-q-axgroup001-consumer-group-001-dl
قائمة الانتظار هذه هي قائمة انتظار الأحرف المتوقفة. إنها بمثابة وجهة للرسائل التي تعذّر على
edge-qpid-server
معالجتها، وبالتالي لم يعد يرغب في استلامها. عادةً ما تتم تعبئة هذه البيانات عند تجاوز الحد الأقصى لعدد عمليات التسليم، أو في حال رفض PostgreSQL إدراج بيانات جديدة بسبب حدوث أخطاء في وقت التشغيل.
رسالة الخطأ
قد يرجع السبب الأساسي إلى حدوث أخطاء مختلفة في وقت التشغيل من المكوِّن edge-qpid-server
. عادةً إذا تلقت edge-qpid-server
خطأ في وقت التشغيل من PostgreSQL، تنشئ قائمة انتظار الأحرف المتوقفة إذا لم تكن موجودة، ثم تُرسِل الرسالة التالية إلى هناك:
yyyy-MM-dd HH:mm:ss,SSS ax-q-axgroup001-consumer-group-001-persistpool-thread-6 WARN c.a.a.m.MessageConsumer - MessageConsumer.process() : Sending message batch to the DLQ.
الأسباب المحتملة
السبب | الوصف | تعليمات استكشاف الأخطاء وإصلاحها التي تنطبق على |
---|---|---|
الرسائل عالقة في قائمة انتظار الرسائل الخاملة في qpidd | تعذَّر على edge-qpid-server فهم الرسائل التي قرأها من وسيط Qpidd أو تعذّر الاحتفاظ بالرسائل إلى PostgreSQL.
|
مستخدمو Edge الخاص على السحابة الإلكترونية |
خطوات التشخيص الشائعة
قم بتشغيل الأمر التالي لعرض إحصائيات قائمة انتظار Qpidd:
qpid-stat -q
ويعرض الناتج مجموعة قوائم الانتظار المسجّلة لدى الوسيط. إذا كانت قائمة الانتظار التي بها اسم ينتهي بـ "-dl" تحتوي على رسائل مملوءة، فهذا يعني أن هناك رسائل عالقة في قائمة انتظار الأحرف المتوقفة.
Queues queue dur autoDel excl msg msgIn msgOut bytes bytesIn bytesOut cons bind ======================================================================================================================== ax-q-axgroup-001-consumer-group-001 Y 0 185 185 0 13.8m 13.8m 6 2 ax-q-axgroup-001-consumer-group-001-dl Y 0 70 70 0 3.9m 3.9m 0 2
السبب: الرسائل عالقة في قائمة انتظار الأحرف المتوقفة في qpidd
التشخيص
يمكن أن يحدث هذا الشرط في السيناريوهات التالية:
- تم إجراء عملية ترقية في الماضي، وخلال هذه الفترة تعطل PostgreSQL.
- انقطاع مؤقت في PostgreSQL بسبب مشاكل في الشبكة.
- حاولت
edge-qpid-server
إرسال رسالة إلى PostgreSQL، ولكن PostgreSQL عرضت خطأ في وقت التشغيل.
درجة الدقّة
دوِّن اسم قوائم الانتظار من خطوات التشخيص الشائعة. مثال:
ax-q-axgroup-001-consumer-group-001
ax-q-axgroup-001-consumer-group-001-dl
يمكنك تشغيل الأمر
qpid-tool
لإدخال طلبqpid
تفاعلي:qpid-tool
يعرض هذا الأمر ما يلي:
Management Tool for QPID qpid:
شغِّل
list broker
للحصول على قائمة بالوسطاء النشطين:list broker
يعرض هذا الأمر ما يلي:
Object Summary: ID Created Destroyed Index ======================================= 125 21:00:00 - amqp-broker
حيث يحدّد عمود "
ID
" رقم تعريف الوسيط.دوِّن رقم تعريف الوسيط. في المثال هو 125.
نفِّذ الأمر التالي لنقل الرسائل من قائمة انتظار الأحرف المتوقفة إلى قائمة الانتظار الفعلية:
call 125 queueMoveMessages ax-q-axgroup-001-consumer-group-001-dl ax-q-axgroup-001-consumer-group-001 100000 {}
يعرض هذا الأمر ما يلي:
OK (0) - {}
إذا لم يكن هناك أي نتائج، فليس هناك ما يلزم القيام به، وبالتالي لا يعني ذلك أنه لا توجد رسائل لنقلها. إذا لم يظهر لك رمز الاستجابة
OK(0)
، عليك التواصل مع فريق دعم Apigee Edge.عليك إنهاء الوحدة الطرفية لأداة qpid.
quit
انتظِر لمدة 5 دقائق، ثم نفِّذ خطوات التشخيص مرة أخرى من خطوات التشخيص الشائعة. تحقق من أن الرسائل في قائمة الانتظار الفعلية تتم معالجتها وتأكد من بقاء عدد رسائل الرسالة المتوقفة عند 0.
إذا استمرت المشكلة، انتقِل إلى القسم التالي.
ضرورة جمع معلومات التشخيص
إذا استمرت المشكلة حتى بعد اتباع التعليمات المذكورة أعلاه، يُرجى جمع معلومات التشخيص التالية. يمكنك التواصل مع فريق دعم Apigee Edge ومشاركته مع:
- سجلات Qpidd:
/opt/apigee/var/log/apigee-qpidd/apigee-qpidd.log
- سجلات Postgresql:
/opt/apigee/var/log/apigee-postgresql/apigee-postgresql.log
- سجلات خادم Edge-qpid:
/opt/apigee/var/log/edge-qpid-server/logs/system.log
- سجلات خادم Edge-postgres:
/opt/apigee/var/log/edge-postgres-server/logs/system.log
إحصاءات قائمة انتظار Qpidd:
qpid-stat -q
مجموعة "إحصاءات Google" التي يعرضها الأمر curl التالي:
curl -u sysadminEmail:password http://mgmt:8080/v1/analytics/groups/ax