Skip to main content

ما الذي يقدّمه

يلتقط تتبّع الطلبات رحلة طلب HTTP عبر خدمة الخادم لديك: الطلب نفسه وكل عملية أطلقها (استعلامات قاعدة البيانات، استدعاءات HTTP الخارجية، وما تتتبّعه بنفسك)، مع توقيت وحالة كل خطوة. متاح لحزم SDK الخادم: NestJS وPython وASP.NET. الغاية ليست بيانات التوقيت بحد ذاتها، بل أن تفتح خطأً في لوحة التحكم فترى فوراً الطلب الذي أنتجه — أي استعلام كان بطيئاً، وأي استدعاء خارجي فشل.
  • قوالب المسارات لا المسارات الخام. يُسجَّل الطلب إلى /users/42 باسم GET /users/:id (/users/{user_id} في Python و/users/{id:int} في ASP.NET). عشرة آلاف معرّف مختلف هي مسار واحد لا عشرة آلاف.
  • استعلامات قاعدة البيانات كنطاقات. يُختزل SQL إلى قالب (SELECT * FROM users WHERE id = ?) قبل أن يصبح اسم نطاق؛ لا تُسجَّل معاملات الاستعلام ولا صفوفه أبداً.
  • الاستدعاءات الخارجية تحمل التتبّع. تحصل استدعاءات HTTP إلى خدمة أخرى على ترويسة traceparent وفق معيار W3C؛ والخدمة اللاحقة التي تشغّل Lerix تواصل التتبّع نفسه، فيظهر الطلب العابر لخدمتين كشلال واحد.
  • الأخطاء ترتبط بطلبها. كل تقرير خطأ يُرسل داخل طلب يحمل تتبّع ذلك الطلب، وتتبّع الطلب يربط بدوره إلى الخطأ.

في لوحة التحكم

ضمن مشروع خادم، تعرض صفحة الطلبات: في صفحة المشكلة يظهر شلال الطلب مضمَّناً، مع تمييز النطاق الذي أُبلغ عن الخطأ منه، وتلوين أي نطاق فشل بالأحمر.

أخذ العينات

الاحتفاظ بكل نطاق من كل طلب غير ممكن عند الأحجام الكبيرة، لذا تحتفظ حزمة SDK افتراضياً بـ 10% من الطلبات الناجحة كاملةً، وتحتفظ دائماً بأي طلب فشل أو تجاوز عتبة البطء (ثانيتان افتراضياً) أو أبلغ عن خطأ. يُتخذ القرار مرة واحدة عند بدء الطلب ويرثه كل نطاق فرعي وكل خدمة لاحقة — فالتتبّع إما كامل أو غائب، لا نصف ناقص. مهما كانت النسبة، يُرسل النطاق الجذر لكل طلب مع علامة “غير مُعيَّن”، لذا تحسب لوحة المسارات 100% من الحركة.

مدة الاحتفاظ

تُحفظ النطاقات الخام 7 أيام، والتجميعات لكل مسار 90 يوماً.

عناوين العملاء

عنوان عميل كل طلب بيانات شخصية، لذا فإن ما يحتفظ به Lerix منه خيار لكل مشروع ضمن إعدادات المشروع ← التتبّع: كما تُضبط هناك طريقة قراءة العنوان: عدد الوكلاء الموثوقين (كم وكيلاً يقف بين الإنترنت وخدمتك؛ 0 يعني أن النظير المباشر هو العميل) والترويسة التي يكتبونها (X-Forwarded-For افتراضياً). لا تُوثَق السلسلة كاملةً أبداً — المدخلات اليسرى هي ما اختار العميل إرساله.
التتبّع معطَّل افتراضياً في كل حزم SDK ولا يُفعَّل إلا بخيار صريح. ترقية حزمة SDK لا تغيّر شيئاً لخدمة لم تفعّله.