استخدام أداة تتبع

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

ما هي أداة التتبُّع؟

Trace هي أداة لاستكشاف الأخطاء وإصلاحها ومراقبة الخوادم الوكيلة لواجهة برمجة التطبيقات التي تعمل على Apigee Edge. يتيح لك التتبُّع التحقّق من تفاصيل كل خطوة من خلال تدفق الخادم الوكيل لواجهة برمجة التطبيقات.

شاهِد هذا الفيديو للحصول على مقدمة عن أداة التتبُّع.

كيفية استخدام التتبُّع

يسهل استخدام ميزة التتبُّع. يمكنك بدء جلسة تتبُّع، ثم إجراء طلب بيانات من واجهة برمجة التطبيقات إلى نظام Edge الأساسي وقراءة النتائج.

  1. ادخل إلى صفحة الخوادم الوكيلة لواجهة برمجة التطبيقات، كما هو موضح أدناه.

    Edge

    للوصول إلى صفحة الخوادم الوكيلة لواجهة برمجة التطبيقات باستخدام واجهة مستخدم Edge:

    1. سجِّل الدخول إلى apigee.com/edge.
    2. حدّد التطوير > الخوادم الوكيلة لواجهة برمجة التطبيقات في شريط التنقل الأيمن.

    كلاسيكي Edge (السحابة الإلكترونية الخاصة)

    للوصول إلى صفحة الخوادم الوكيلة لواجهة برمجة التطبيقات باستخدام واجهة مستخدم الإصدار الكلاسيكي من Edge:

    1. سجِّل الدخول إلى http://ms-ip:9000، حيث يشير ms-ip إلى عنوان IP أو اسم نظام أسماء النطاقات لعقدة خادم الإدارة.
    2. حدد واجهات برمجة التطبيقات > الخوادم الوكيلة لواجهة برمجة التطبيقات في شريط التنقل العلوي.
  2. اختَر خادمًا وكيلاً لواجهة برمجة التطبيقات من صفحة "الخوادم الوكيلة لواجهة برمجة التطبيقات".
  3. تأكّد من نشر واجهة برمجة التطبيقات التي تريد تتبُّعها.
  4. انقر على التتبُّع للانتقال إلى عرض أداة التتبُّع.
  5. استخدِم القائمة المنسدلة النشر للتتبّع لاختيار بيئة النشر ومراجعة الخادم الوكيل التي تريد تتبُّعها.
  6. انقر على بدء جلسة التتبُّع. عندما تكون جلسة التتبُّع مفعّلة، يُسجِّل الخادم الوكيل لواجهة برمجة التطبيقات تفاصيل كل خطوة في مسار المعالجة. أثناء تشغيل جلسة التتبُّع، يتم تسجيل الرسائل والبيانات السياقية من حركة البيانات المباشرة.

  7. إذا لم يكن هناك أي زيارات مباشرة تتدفق من خلال الخادم الوكيل، ما عليك سوى إرسال طلب إلى واجهة برمجة التطبيقات. يمكنك استخدام أي أداة لإرسال الطلب، مثل curl أو Postman أو أي أداة معروفة. أو يمكنك إرسال الطلب مباشرةً من أداة التتبُّع نفسها. ما عليك سوى إدخال عنوان URL والنقر على إرسال. ملاحظة: يمكنك إرسال طلب GET من أداة التتبُّع فقط، وليس طلب POST.

    ملاحظة: يمكن أن تتيح جلسة التتبُّع الواحدة 10 معاملات للطلبات/الاستجابة لكل معالج رسائل من خلال الخادم الوكيل المحدّد لواجهة برمجة التطبيقات. في السحابة الإلكترونية Edge، يتم دعم 20 معاملة لطلب/استجابة للبيانات من خلال معالجَي رسائل يعالجان حركة البيانات. تتوقف جلسة التتبُّع تلقائيًا بعد 10 دقائق إذا لم توقفها يدويًا.
  8. عندما تلتقط عددًا كافيًا من الطلبات، انقر على إيقاف جلسة التتبُّع.
  9. تظهر في القائمة اليمنى قائمة بمعاملات الطلبات/الاستجابة المسجَّلة. انقر على أيّ من المعاملات للاطّلاع على نتائج مفصّلة.

كيفية قراءة بيانات التتبّع

تتكون أداة التتبُّع من جزأين رئيسيين، هما خريطة المعاملات وتفاصيل المرحلة:

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

في ما يلي نموذج لخريطة أداة تتبّع تتضمّن قطاعات معالجة الخادم الوكيل الرئيسية المصنّفة:

خريطة معاملات أداة التتبُّع

وسيلة الإيضاح لخريطة المعاملات

يوضّح الجدول التالي الغرض من الرموز التي ستظهر لك في خريطة المعاملات. تحدد هذه الرموز كل خطوة من خطوات المعالجة الملحوظة خلال تدفق الخادم الوكيل.

رموز خرائط المعاملات

تطبيق العميل الذي يرسل طلبًا إلى ProxyEndpoint للخادم الوكيل لواجهة برمجة التطبيقات.
تشير الدوائر إلى نقاط النهاية الانتقالية في تدفق الخادم الوكيل. وهي تظهر عندما يأتي الطلب من العميل، وعندما يصل الطلب إلى الهدف، وعندما يأتي الرد من العميل المستهدَف، وعندما يعود الرد إلى العميل.

تشير الأشرطة الطويلة إلى بداية مقطع التدفق في تدفق الخادم الوكيل لواجهة برمجة التطبيقات. شرائح التدفق هي: طلب ProxyEndpoint وطلب TargetEndpoint واستجابة TargetEndpoint واستجابة ProxyEndpoint. يتضمن القسم "التدفق المسبق" و"التدفقات الشرطية" و"PostFlow".

راجِع إعداد المسارات للحصول على مزيد من المعلومات.

يشير إلى حدوث إجراءات "إحصاءات Google" في الخلفية.

يشير ذلك المصطلح إلى تدفق شرطي يتم تقييمه على true. للحصول على مقدمة عن التدفقات الشرطية، راجِع ضبط التدفقات.

يُرجى العلم أنّ بعض الشروط يتم إنشاؤها باستخدام Edge. على سبيل المثال، فيما يلي تعبير يستخدمه Edge للتحقق مما إذا حدث خطأ في ProxyEndpoint:

((error.state equals PROXY_REQ_FLOW) or (error.state equals PROXY_RESP_FLOW))

يشير ذلك المصطلح إلى تدفق شرطي يتم تقييمه إلى false. للاطّلاع على مقدمة عن التدفقات الشرطية، يُرجى الاطّلاع على ضبط التدفقات.

يُرجى العلم أنّ بعض الشروط يتم إنشاؤها باستخدام 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.
هو الهدف في الخلفية الذي يطلبه الخادم الوكيل لواجهة برمجة التطبيقات.
ويشير السطر الزمني إلى المدة التي استغرقها وقت المعالجة (بالمللي ثانية) لإكمالها. تساعدك مقارنة قطاعات الوقت المنقضي في فصل السياسات التي تستغرق وقتًا أطول في التنفيذ، ما يؤدي إلى إبطاء طلبات البيانات من واجهة برمجة التطبيقات.
يشير إبسيلون إلى مدى زمني أصغر من مللي ثانية.

الزر غير مفعّل. تظهر في رمز السياسة عند إيقاف السياسة. ويمكن إيقاف سياسة باستخدام واجهة برمجة التطبيقات المتاحة للجميع. يُرجى الاطّلاع على مرجع ضبط الخادم الوكيل لواجهة برمجة التطبيقات.

حدث خطأ. يظهر في رمز السياسة عند تقييم شرط "خطوة السياسة" إلى "خطأ" (يُرجى الاطّلاع على متغيرات وشروط التدفق)، أو على رمز سياسة ClaimFault عندما يتم تنفيذ سياسة ClaimFault.
تم التخطّي تظهر على رمز السياسة في حال عدم تنفيذ السياسة بسبب تقييم شرط الخطوة على "خطأ". اطّلِع على متغيّرات التدفق وشروطه للحصول على مزيد من المعلومات.

فهم تفاصيل المرحلة

يقدّم لك جزء تفاصيل المرحلة في الأداة الكثير من المعلومات عن حالة الخادم الوكيل في كل خطوة من خطوات المعالجة. فيما يلي بعض التفاصيل المقدمة في تفاصيل المرحلة. انقر على أي رمز في أداة التتبُّع للاطّلاع على تفاصيل الخطوة التي تم اختيارها، أو استخدِم زر التالي/رجوع للانتقال من خطوة إلى أخرى.

تفاصيل المرحلة الوصف
نقطة نهاية الخادم الوكيل يشير إلى تدفق ProxyEndpoint الذي تم اختياره للتنفيذ. يمكن أن يحتوي الخادم الوكيل لواجهة برمجة التطبيقات على العديد من نقاط نهاية الخادم الوكيل المسماة.
المتغيرات

لإدراج متغيّرات التدفق التي تمّت قراءتها وتخصيص قيمة لها من خلال إحدى السياسات. راجِع أيضًا إدارة حالة الخادم الوكيل باستخدام متغيّرات التدفق.

ملاحظة:

  • تشير علامة يساوي (=) إلى القيمة التي تم تعيينها للمتغير.
  • تشير علامة يساوي المشطوبة (≠) إلى أنّه قد يتعذّر تعيين قيمة للمتغيّر لأنّه للقراءة فقط أو حدث خطأ في تنفيذ السياسة.
  • يشير الحقل الفارغ إلى أنّ قيمة المتغيّر قد تمت قراءتها.
عناوين الطلبات يسرد عناوين طلب HTTP.
طلب المحتوى يعرض نص طلب HTTP.
أماكن إقامة تمثل المواقع الحالة الداخلية للخادم الوكيل لواجهة برمجة التطبيقات. وهي لا تظهر تلقائيًا.
نقطة النهاية المستهدفة يشير إلى ميزة TargetEndpoint التي تم اختيارها للتنفيذ.
عناوين الاستجابة يسرد عناوين استجابة HTTP.
محتوى الرد يعرض نص استجابة HTTP.
PostClientFlow يعرض معلومات عن PostClientFlow التي يتم تنفيذها بعد إرجاع الطلب إلى تطبيق العميل الذي يقدّم الطلب. ولا يمكن إرفاق سوى سياسات MessageLogging بـ PostClientFlow. يُستخدم PostClientFlow حاليًا بشكل أساسي لقياس الفاصل الزمني بين الطابعين الزمنيين للبدء والانتهاء لرسالة الرد.

تحسين التقاط الرسائل باستخدام الفلاتر

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

  • عناوين HTTP - قصر تتبُّع التتبّع على المكالمات التي تحتوي على عنوان معيّن فقط. وهذه طريقة جيدة لمساعدتك في تحديد المشاكل وحلّها. يمكنك إرسال عنوان إلى مطوّر التطبيقات وطلب تضمينه في المكالمة التي تسبب المشاكل. بعد ذلك، لن يسجِّل Apigee Edge سوى المكالمات التي تتم باستخدام هذا العنوان المحدّد لتتمكّن من فحص النتائج.
  • مَعلمات طلب البحث - سيتم تسجيل الطلبات فقط التي تحتوي على قيمة معيّنة لمَعلمة.

معلومات مهمة عن ميزة "الفلتر"

  • يجب إعادة تشغيل جلسة التتبُّع بعد تحديد مَعلمات الفلاتر في حقول الفلاتر.
  • يتم الجمع بين مَعلمات الفلاتر "و". يجب أن تكون جميع أزواج طلب البحث و/أو العنوان/القيم المحدّدة متوفّرة في الطلب للحصول على مطابقة ناجحة.
  • مطابقة الأنماط غير متاحة في أداة الفلاتر.
  • تجدر الإشارة إلى أنّ مَعلمات الفلاتر وقيمها حسّاسة لحالة الأحرف.

كيفية إنشاء فلتر تتبُّع

  1. إذا كانت جلسة التتبّع قيد التشغيل، يمكنك إيقافها من خلال النقر على إيقاف جلسة التتبُّع.
  2. انقر على الفلاتر في الزاوية العلوية اليمنى من أداة التتبُّع لتوسيع حقل الفلاتر.

    في أداة التتبُّع، يكون تصنيف الشريط الجانبي لـ "الفلاتر" محاطًا بدائرة.
  3. في حقل "الفلاتر"، حدِّد معلمة طلب البحث و/أو قيم العنوان التي تريد الفلترة وفقًا لها. في هذا المثال، نحدد معلمتي طلب بحث للتصفية بناءً علىهما. يجب تضمين كلتا المَعلمتَين في طلب المطابقة بنجاح.

    في أداة التتبُّع، ضمن "الفلاتر"، ضمن "مَعلمة طلب البحث"، يتم ضبط مثالَين للأسماء والقيم.
  4. ابدأ جلسة التتبُّع.
  5. استدعِ واجهات برمجة التطبيقات. لا تظهر المطابقة بنجاح إلا للطلبات التي تتضمّن جميع العناوين و/أو معلَمات طلب البحث المحدّدة.

ضمن "المعاملات"، تظهر أربع نتائج تتطابق مع مَعلمتَي طلب بحث محدّدتَين مسبقًا.

في المثال أعلاه، سيظهر طلب البيانات من واجهة برمجة التطبيقات هذا في Trace:

http://docs-test.apigee.net/cats?name=Penny&breed=Calico

ولكن هذا لن يؤدي إلى:

http://docs-test.apigee.net/cats?name=Penny

تصحيح الأخطاء باستخدام التتبع

يتيح لك التتبُّع الاطّلاع على الكثير من التفاصيل الداخلية حول الخادم الوكيل لواجهة برمجة التطبيقات. مثال:

  • يمكنك إلقاء نظرة سريعة على السياسات التي يتم تنفيذها بشكل صحيح أو يتعذّر تنفيذها.
  • لنفترض أنّك لاحظت من خلال إحدى لوحات بيانات "إحصاءات Google" أنّ إحدى واجهات برمجة التطبيقات تشهد انخفاضًا غير معتاد في الأداء. الآن، يمكنك استخدام التتبُّع للمساعدة في تحديد مكان حدوث هذا المؤثِّر. ويحدّد التتبُّع الوقت بالملي ثانية الذي يستغرقه إكمال كل خطوة من خطوات المعالجة. إذا تبيّن لك أنّ إحدى الخطوات تستغرق وقتًا طويلاً، يمكنك اتّخاذ إجراء تصحيحي.
  • من خلال الاطّلاع على تفاصيل المرحلة، يمكنك الاطّلاع على العناوين التي يتم إرسالها إلى الخلفية، والاطّلاع على المتغيّرات التي تم تحديدها وفقًا للسياسات، وما إلى ذلك.
  • من خلال التحقّق من المسار الأساسي، يمكنك التأكّد من أنّ السياسة توجّه الرسالة إلى الخادم الصحيح.

تحديد خيارات العرض

حدِّد خيارات العرض لجلسة التتبُّع.

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

تنزيل نتائج التتبُّع

يمكنك تنزيل ملف XML يحتوي على نتائج التتبُّع الأوّلية لعرضها والبحث فيها بلا اتصال بالإنترنت في محرِّر نصوص. يعرض الملف التفاصيل الكاملة لجلسة الاستماع، بما في ذلك محتوى جميع العناوين والمتغيّرات والسياسات.

للتنزيل، انقر على تنزيل جلسة تتبُّع.

عرض الطلبات كـ curl

بعد تتبُّع طلب بيانات من واجهة برمجة التطبيقات تم إجراؤه على خادم مستهدف، يمكنك عرض الطلب كأمر curl. وهذا مفيد بشكل خاص لتصحيح الأخطاء لعدة أسباب:

  • قد يُعدِّل الخادم الوكيل لواجهة برمجة التطبيقات الطلب، لذا من المفيد معرفة أوجه اختلاف الطلب المقدّم من الخادم الوكيل إلى الخادم الهدف عن الطلب الأصلي. يمثّل الأمر curl الطلب المعدَّل.
  • بالنسبة إلى حمولات الرسائل الأكبر حجمًا، يسمح لك curl بالاطّلاع على عناوين HTTP ومحتوى الرسائل في مكان واحد. (العدد المسموح به حاليًا هو 1,000 حرف تقريبًا. للحصول على نصائح حول تجاوز هذا الحدّ، يمكنك الاطّلاع على هذه المشاركة في "المنتدى".)

لأغراض الأمان، تحجب ميزة curl عنوان مصادقة HTTP.

لرؤية الطلبات كـ curl بعد تلقّي طلب بيانات من واجهة برمجة التطبيقات في التتبُّع، اختَر مرحلة "تم إرسال الطلب إلى الخادم الهدف" في الرسم البياني لخريطة المعاملات، ثم انقر على الزر Show curl (إظهار عنوان URL) في عمود "الطلب المُرسل إلى الخادم الهدف" ضمن جزء "تفاصيل المرحلة".

تشير التعليقات التوضيحية للصور إلى الزر "إظهار الروابط" وإحدى الدوائر في الرسم التخطيطي لخريطة المعاملات.

استخدام Apigee لميزة Trace

بشكل تلقائي، تسمح Apigee Edge لفريق دعم Apigee باستخدام أداة Trace على الخوادم الوكيلة لواجهة برمجة التطبيقات لتقديم الدعم. يمكنك إيقاف هذا الخيار في أي وقت. ومع ذلك، قد يؤدي إيقاف هذا الخيار إلى الحدّ من قدرة فريق دعم Apigee على تقديم الدعم لك.

لإيقاف دعم Apigee من استخدام أداة "تتبُّع":

  1. سجِّل الدخول إلى https://apigee.com/edge.
  2. اختَر المشرف > الخصوصية والأمان في شريط التنقّل الأيمن.
  3. انقر على زر التبديل تفعيل دعم Apigee إلى ميزة التتبُّع لإيقاف استخدام أداة تتبُّع Apigee.