أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
ما هي أداة "تتبُّع الأخطاء"؟
Trace هي أداة لتحديد المشاكل وحلّها ومراقبة خوادم وكيل واجهة برمجة التطبيقات التي تعمل على Apigee Edge. تتيح لك أداة Trace التحقّق من تفاصيل كل خطوة من خلال مسار خادم وكيل لواجهة برمجة التطبيقات.
شاهِد هذا الفيديو للحصول على مقدمة عن أداة "التتبُّع".
كيفية استخدام ميزة "التتبُّع"
أداة Trace سهلة الاستخدام. تبدأ جلسة تتبُّع، ثم تجري طلبًا من واجهة برمجة التطبيقات إلى منصة Edge، وتقرأ النتائج.
- يمكنك الوصول إلى صفحة "خوادم API الوكيلة"، كما هو موضّح أدناه.
Edge
للوصول إلى صفحة خوادم وكيل واجهة برمجة التطبيقات باستخدام واجهة مستخدم Edge:
- سجِّل الدخول إلى apigee.com/edge.
- انقر على تطوير > خوادم وكيلة لواجهة برمجة التطبيقات في شريط التنقّل الأيمن.
Classic Edge (Private Cloud)
للوصول إلى صفحة خوادم وكيل واجهة برمجة التطبيقات باستخدام واجهة مستخدم Classic Edge:
- سجِّل الدخول إلى
http://ms-ip:9000، حيث ms-ip هو عنوان IP أو اسم نظام أسماء النطاقات لعقدة خادم الإدارة. - انقر على واجهات برمجة التطبيقات > خوادم وكيلة لواجهات برمجة التطبيقات في شريط التنقّل العلوي.
- اختَر خادم وكيل لواجهة برمجة التطبيقات من صفحة "خوادم وكيل لواجهة برمجة التطبيقات".
- تأكَّد من نشر واجهة برمجة التطبيقات التي تريد تتبُّعها.
- انقر على تتبُّع للانتقال إلى طريقة عرض أداة "تتبُّع".
- استخدِم القائمة المنسدلة النشر إلى التتبُّع لاختيار بيئة النشر ومراجعة الخادم الوكيل اللذين تريد تتبُّعهما.
- انقر على بدء جلسة التتبُّع. عندما تكون جلسة "التتبُّع" نشطة، يسجّل خادم وكيل واجهة برمجة التطبيقات تفاصيل كل خطوة في مسار المعالجة. أثناء تشغيل جلسة التتبُّع، يتم تسجيل الرسائل والبيانات السياقية من حركة المرور المباشرة.

- إذا لم تكن لديك أي زيارات مباشرة تمر عبر الخادم الوكيل، ما عليك سوى إرسال طلب إلى واجهة برمجة التطبيقات. يمكنك استخدام أي أداة تريدها لإرسال الطلب، مثل curl أو Postman أو أي أداة أخرى مألوفة. أو يمكنك إرسال الطلب مباشرةً من أداة Trace نفسها. ما عليك سوى إدخال عنوان URL والنقر على إرسال. ملاحظة: يمكنك إرسال طلب استرداد بيانات باستخدام GET فقط من أداة Trace، ولكن لا يمكنك إرسال طلب POST.
ملاحظة: يمكن لجلسة Trace واحدة أن تتضمّن 10 معاملات طلب/استجابة لكل معالج رسائل من خلال خادم وكيل لواجهة برمجة التطبيقات المحدّد. في Edge cloud، مع معالجتَين للرسائل تتعاملان مع عدد الزيارات، يمكن إجراء 20 عملية طلب/رد. تتوقّف جلسة التتبُّع تلقائيًا بعد 10 دقائق إذا لم توقِفها يدويًا.
- عند تسجيل عدد كافٍ من الطلبات، انقر على إيقاف جلسة التتبُّع.
- تظهر قائمة بمعاملات الطلبات/الردود التي تم تسجيلها في القائمة اليمنى. انقر على أي من المعاملات للاطّلاع على النتائج التفصيلية.
كيفية قراءة عملية تتبُّع
تتضمّن أداة التتبُّع جزأين رئيسيَّين، وهما خريطة المعاملات وتفاصيل المرحلة:
- تستخدِم خريطة المعاملات رموزًا لوضع علامة على كل خطوة مهمة تحدث أثناء معاملة خادم وكيل لواجهة برمجة التطبيقات، بما في ذلك تنفيذ السياسات والخطوات الشرطية وعمليات الانتقال. مرِّر مؤشر الماوس فوق أي رمز للاطّلاع على معلومات موجزة. تظهر خطوات مسار الطلب في أعلى خريطة المعاملات، بينما تظهر خطوات مسار الرد في أسفلها.
- يسرد قسم تفاصيل المرحلة في الأداة معلومات حول المعالجة الداخلية للخادم الوكيل، بما في ذلك المتغيرات التي تم ضبطها أو قراءتها، وعناوين الطلبات والاستجابات، وغير ذلك الكثير. انقر على أي رمز للاطّلاع على تفاصيل المرحلة الخاصة بهذه الخطوة.
في ما يلي نموذج لخريطة أداة تتبُّع مع تصنيف الأقسام الرئيسية لمعالجة الخادم الوكيل:
خريطة المعاملات في أداة التتبُّع

التسمية التوضيحية لخريطة المعاملات
يوضّح الجدول التالي الغرض من الرموز التي ستظهر في خريطة المعاملات. تشير هذه الرموز إلى كل خطوة من خطوات المعالجة البارزة خلال عملية استخدام الخادم الوكيل.
رموز خريطة المعاملات
![]() |
تطبيق العميل الذي يرسل طلبًا إلى ProxyEndpoint لخادم وكيل واجهة برمجة التطبيقات |
| تشير الدوائر إلى نقاط نهاية انتقالية في مسار الخادم الوكيل. تكون هذه الخوادم متوفّرة عندما يتلقّى الخادم الوكيل طلبًا من العميل، وعندما يتم إرسال الطلب إلى الخادم المستهدف، وعندما يتلقّى الخادم الوكيل الردّ من الخادم المستهدف، وعندما يتم إرسال الردّ إلى العميل. | |
|
تشير الأشرطة الطويلة إلى بداية جزء من مسار في خادم وكيل لواجهة برمجة التطبيقات. شرائح Flow هي: طلب ProxyEndpoint، وطلب TargetEndpoint، واستجابة TargetEndpoint، واستجابة ProxyEndpoint. يتضمّن المقطع PreFlow وConditional Flows وPostFlow. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إعداد المسارات. |
|
|
تشير إلى أنّ إجراءات "إحصاءات Google" قد حدثت في الخلفية. |
|
|
سير عمل شرطي يتم تقييمه على أنّه صحيح. للحصول على مقدّمة حول المهام المستندة إلى شروط، راجِع ضبط المهام. يُرجى العِلم أنّ بعض الشروط يتم إنشاؤها على Edge. على سبيل المثال، ما يلي هو تعبير يستخدمه Edge للتحقّق مما إذا حدث خطأ في ProxyEndpoint: ((error.state equals PROXY_REQ_FLOW) or (error.state equals
PROXY_RESP_FLOW))
|
|
|
سير عمل شرطي يتم تقييمه على أنّه "خطأ". للحصول على مقدّمة حول المهام المستندة إلى شروط، راجِع ضبط المهام. يُرجى العِلم أنّ بعض الشروط يتم إنشاؤها على Edge. على سبيل المثال، ما يلي تعبير يستخدمه Edge للتحقّق مما إذا حدث خطأ في TargetEndpoint: (((error.state equals TARGET_REQ_FLOW) or (error.state equals
TARGET_RESP_FLOW)) or ((error.state equals REQ_SENT) or (error.state equals
RESP_START)))
|
|
|
|
السياسات لكل نوع من السياسات رمز فريد. هذا الخيار مخصّص لسياسة AssignMessage. تتيح لك هذه الرموز معرفة الأماكن التي يتم فيها تنفيذ السياسات بالترتيب الصحيح وما إذا كانت ناجحة أم لا. يمكنك النقر على رمز سياسة للاطّلاع على نتائج تنفيذها ومعرفة ما إذا كانت النتائج متوقّعة أم لا. على سبيل المثال، يمكنك معرفة ما إذا تم تحويل الرسالة بشكل صحيح أو ما إذا كان يتم تخزينها مؤقتًا. يتم الإشارة بوضوح إلى تنفيذ السياسات بشكل صحيح من خلال علامات الاختيار. في حال حدوث خطأ، تظهر علامة تعجّب حمراء على الرمز. ملاحظة: انتبه إلى تلميح الأدوات أو المخطط الزمني لمعرفة ما إذا كانت أي سياسة تستغرق وقتًا أطول من المتوقع. |
![]() |
يظهر هذا الحقل عندما يكون الهدف من الخلفية تطبيق Node.js. اطّلِع على نظرة عامة على Node.js على Apigee Edge. |
![]() |
الهدف الخلفي الذي يستدعيه خادم وكيل واجهة برمجة التطبيقات |
![]() |
يشير المخطط الزمني إلى المدة التي استغرقتها عملية المعالجة (بالمللي ثانية) حتى تكتمل. تساعدك مقارنة شرائح الوقت المنقضي في عزل السياسات التي تستغرق أطول وقت في التنفيذ والتي تؤدي إلى إبطاء طلبات البيانات من واجهة برمجة التطبيقات. |
| يشير الرمز Epsilon إلى فترة زمنية أصغر من جزء من الألف من الثانية. | |
|
الزر غير مفعّل. يظهر على رمز السياسة عندما تكون السياسة غير مفعّلة. يمكن إيقاف السياسة باستخدام واجهة برمجة التطبيقات المتاحة للجميع. اطّلِع على مرجع إعداد خادم وكيل لواجهة برمجة التطبيقات. |
|
| حدث خطأ. يظهر على رمز السياسة عندما يتم تقييم شرط خطوة السياسة على أنّه خطأ (راجِع متغيرات التدفق والشروط)، أو على رمز سياسة RaiseFault عندما يتم تنفيذ سياسة RaiseFault. | |
| تم تخطّي هذه الخطوة. يظهر على رمز السياسة عندما لا يتم تنفيذ السياسة لأنّ شرط الخطوة تم تقييمه على أنّه خطأ. لمزيد من المعلومات، اطّلِع على متغيرات التدفق والشروط. |
فهم تفاصيل المرحلة
يخبرك جزء تفاصيل المرحلة في الأداة بالكثير عن حالة الخادم الوكيل في كل خطوة من خطوات المعالجة. في ما يلي بعض التفاصيل المقدَّمة في "تفاصيل المرحلة". انقر على أي رمز في أداة التتبُّع للاطّلاع على تفاصيل الخطوة المحدّدة، أو استخدِم الزرَّين التالي/السابق للانتقال من خطوة إلى أخرى.
| تفاصيل المرحلة | الوصف |
| نقطة نهاية الخادم الوكيل | تشير إلى مسار ProxyEndpoint الذي تم اختياره للتنفيذ. يمكن أن يتضمّن خادم وكيل لواجهة برمجة التطبيقات نقاط نهاية وكيل متعدّدة تحمل أسماء. |
| المتغيّرات |
تعرض هذه السمة متغيّرات التدفق التي قرأتها إحدى السياسات وخصّصت لها قيمة. راجِع أيضًا إدارة حالة الخادم الوكيل باستخدام متغيّرات التدفق. ملاحظة:
|
| عناوين الطلبات | تعرض هذه السمة عناوين طلبات HTTP. |
| طلب محتوى | تعرِض هذه السمة نص طلب HTTP. |
| الخصائص | تمثّل الخصائص الحالة الداخلية لخادم وكيل واجهة برمجة التطبيقات. ولا يتم عرضها تلقائيًا. |
| نقطة النهاية المستهدَفة | تشير هذه السمة إلى TargetEndpoint الذي تم اختياره للتنفيذ. |
| عناوين الاستجابة | تعرض هذه السمة عناوين استجابة HTTP. |
| محتوى الرد | تعرِض هذه السمة نص استجابة HTTP. |
| PostClientFlow | تعرض هذه السمة معلومات عن PostClientFlow، التي يتم تنفيذها بعد أن يتم إرجاع الطلب إلى تطبيق العميل الذي أرسل الطلب. يمكن ربط سياسات MessageLogging فقط بـ PostClientFlow. يُستخدَم PostClientFlow حاليًا بشكل أساسي لقياس الفاصل الزمني بين الطابعَين الزمنيَين للبدء والانتهاء لرسالة الردّ. |
تحسين عملية تسجيل الرسائل باستخدام الفلاتر
يمكنك فلترة الطلبات التي تظهر في أداة "التتبُّع" من خلال تحديد قيم مَعلمات العنوان و/أو طلب البحث. تتيح لك الفلاتر استهداف مكالمات معيّنة قد تتسبّب في حدوث مشاكل. على سبيل المثال، قد تحتاج إلى التركيز على الطلبات التي تتضمّن محتوًى معيّنًا أو الطلبات الواردة من شركاء أو تطبيقات معيّنة. يمكنك الفلترة حسب:
- عناوين HTTP: يمكنك حصر التتبُّع على المكالمات التي تتضمّن عنوانًا محدّدًا فقط. هذه طريقة جيدة لمساعدتك في تحديد المشاكل وحلّها. يمكنك إرسال عنوان إلى مطوّر التطبيق وطلب تضمينه في المكالمة التي تسبّب مشاكل. بعد ذلك، لن تسجّل Apigee Edge سوى الطلبات التي تتضمّن هذا العنوان المحدّد، ما يتيح لك فحص النتائج.
- مَعلمات طلب البحث: سيتم تسجيل المكالمات التي تتضمّن قيمة معيّنة لمَعلمة معيّنة فقط.
معلومات مهمة حول ميزة "الفلتر"
- يجب إعادة تشغيل جلسة "تتبُّع الأخطاء" بعد تحديد مَعلمات الفلتر في حقول الفلتر.
- يتم ربط مَعلمات الفلتر باستخدام "و". يجب أن تتوفّر جميع أزواج طلب البحث و/أو اسم العنوان/القيمة المحدّدة في الطلب لإجراء مطابقة ناجحة.
- لا تتوافق ميزة "مطابقة الأنماط" مع أداة "الفلاتر".
- تكون مَعلمات الفلتر وقيمه حسّاسة لحالة الأحرف.
كيفية إنشاء فلتر تتبُّع
- إذا كانت جلسة تتبُّع قيد التشغيل، أوقِفها بالنقر على إيقاف جلسة التتبُّع.
- انقر على الفلاتر في أعلى يمين "أداة التتبُّع" لتوسيع حقل "الفلاتر".

- في حقل "الفلاتر"، حدِّد مَعلمات طلب البحث و/أو قيم العناوين التي تريد فلترتها. في هذا المثال، نحدّد مَعلمتَي طلب بحث لتطبيق الفلترة. يجب أن تكون كلتا المَعلمتَين مضمّنتَين في الطلب لإجراء مطابقة ناجحة.

- ابدأ جلسة التتبُّع.
- استدعاء واجهات برمجة التطبيقات لا تؤدي إلى تطابق ناجح إلا الطلبات التي تتضمّن جميع العناوين و/أو مَعلمات طلب البحث المحدّدة.

في المثال أعلاه، سيظهر طلب البيانات من واجهة برمجة التطبيقات هذا في "التتبُّع" على النحو التالي:
http://docs-test.apigee.net/cats?name=Penny&breed=Calico
ولكن لن يؤدي ذلك إلى:
http://docs-test.apigee.net/cats?name=Penny
تصحيح الأخطاء باستخدام Trace
تتيح لك أداة Trace الاطّلاع على الكثير من التفاصيل الداخلية حول خادم وكيل لواجهة برمجة التطبيقات. على سبيل المثال:
- يمكنك الاطّلاع بسرعة على السياسات التي يتم تنفيذها بشكلٍ صحيح أو التي يتعذّر تنفيذها.
- لنفترض أنّك لاحظت من خلال إحدى لوحات بيانات "إحصاءات Google" أنّ أحد واجهات برمجة التطبيقات يشهد انخفاضًا غير معتاد في الأداء. يمكنك الآن استخدام Trace للمساعدة في تحديد موضع حدوث المؤثر السلبي. تعرض عملية التتبُّع الوقت المستغرَق بالملّي ثانية لإكمال كل خطوة من خطوات المعالجة. إذا تبيّن لك أنّ إحدى الخطوات تستغرق وقتًا طويلاً، يمكنك اتّخاذ إجراء تصحيحي.
- من خلال الاطّلاع على تفاصيل المرحلة، يمكنك التحقّق من العناوين التي يتم إرسالها إلى الخلفية، وعرض المتغيّرات التي تم ضبطها بواسطة السياسات، وما إلى ذلك.
- من خلال التحقّق من المسار الأساسي، يمكنك التأكّد من أنّ السياسة توجّه الرسالة إلى الخادم الصحيح.
اختيار خيارات العرض
اختَر خيارات العرض لجلسة التتبُّع.

| الخيار | الوصف |
| عرض السياسات غير المفعَّلة | عرض أي سياسات تم إيقافها يمكن إيقاف السياسة باستخدام واجهة برمجة التطبيقات العامة. اطّلِع على مرجع إعداد خادم وكيل لواجهة برمجة التطبيقات. |
| عرض المراحل التي تم تخطّيها | عرض أي مراحل تم تخطّيها تحدث مرحلة تم تخطّيها عندما لا يتم تنفيذ السياسة لأنّ شرط الخطوة تم تقييمه على أنّه خطأ. لمزيد من المعلومات، اطّلِع على متغيرات التدفق والشروط. |
| عرض جميع FlowInfos | تمثّل عمليات الانتقال ضِمن جزء من مسار الإحالة الناجحة. |
| مقارنة المرحلة المحدّدة تلقائيًا | يقارن هذه السمة المرحلة المحدّدة بالمرحلة السابقة. أوقِف هذا الخيار لعرض المرحلة المحدّدة فقط. |
| عرض المتغيّرات | عرض أو إخفاء المتغيّرات التي تمت قراءتها و/أو تم تعيين قيمة لها |
| إظهار الخصائص | تمثّل المواقع الحالة الداخلية لخادم وكيل واجهة برمجة التطبيقات. (يتم إخفاء هذا القسم تلقائيًا). |
تنزيل نتائج التتبُّع
يمكنك تنزيل ملف XML يتضمّن نتائج التتبُّع الأولية لعرضها والبحث فيها بلا إنترنت في محرر نصوص. يعرض الملف التفاصيل الكاملة لجلسة الاستماع، بما في ذلك محتوى جميع العناوين والمتغيرات والسياسات.
لتنزيلها، انقر على تنزيل جلسة التتبُّع.
عرض الطلبات بتنسيق curl
بعد تتبُّع طلب بيانات من واجهة برمجة التطبيقات تم إرساله إلى خادم مستهدف، يمكنك عرض الطلب كأمر curl. ويُعدّ ذلك مفيدًا بشكل خاص لتصحيح الأخطاء لعدة أسباب:
- قد يعدّل خادم وكيل واجهة برمجة التطبيقات الطلب، لذا من المفيد معرفة الفرق بين الطلب الذي يرسله الخادم الوكيل إلى الخادم المستهدف والطلب الأصلي. يمثّل أمر curl الطلب المعدَّل.
- بالنسبة إلى حمولات الرسائل الأكبر حجمًا، يتيح لك curl الاطّلاع على عناوين HTTP ومحتوى الرسالة في مكان واحد. (يبلغ الحدّ الأقصى حاليًا حوالي 1,000 حرف. للحصول على نصيحة حول تجاوز هذا الحد، يُرجى الاطّلاع على هذا المنشور في "المنتدى").
لأغراض الأمان، تخفي ميزة curl عنوان HTTP Authorization.
لعرض الطلبات بتنسيق curl بعد تلقّي طلب بيانات من واجهة برمجة التطبيقات في Trace، اختَر مرحلة "الطلب المُرسَل إلى الخادم المستهدف" في الرسم البياني "خريطة المعاملات"، ثم انقر على الزر عرض curl في عمود "الطلب المُرسَل إلى الخادم المستهدف" في لوحة "تفاصيل المرحلة".

استخدام "أداة التتبُّع" من قِبل فريق الدعم في Apigee
بشكل تلقائي، تسمح Apigee Edge لفريق دعم Apigee باستخدام أداة Trace على الخوادم الوكيلة لواجهة برمجة التطبيقات لتقديم الدعم. يمكنك إيقاف هذا الخيار في أي وقت. ومع ذلك، قد يؤدي إيقاف هذا الخيار إلى الحدّ من قدرة فريق دعم Apigee على تقديم الدعم لك.
لإيقاف دعم Apigee من استخدام أداة "تتبُّع":
- سجِّل الدخول إلى https://apigee.com/edge.
- اختَر المشرف > الخصوصية والأمان في شريط التنقّل الأيمن.
- انقر على زر التبديل تفعيل دعم Apigee إلى ميزة التتبُّع لإيقاف استخدام أداة تتبُّع Apigee.



