مقدمة
بعد التثبيت، فعّل تتبّع الطلبات لترى ضمن الطلبات في لوحة التحكم كل طلب عالجته خدمتك مع مساره ومدته واستعلاماته واستدعاءاته الخارجية — ولتفتح الطلب الذي تسبّب في أي خطأ. راجع تتبّع الطلبات لما تعرضه لوحة التحكم.التفعيل
lerix.tracing ولا يُثبَّت أي خطاف. يأتي نطاق الطلب نفسه من تكامل إطار
العمل الذي سجّلته مسبقاً:
ما الذي يُسجَّل
- نطاق خادم واحد لكل طلب، يُسمّى بحسب قالب المسار لا المسار الخام.
تُواصَل ترويسة
traceparentالواردة وفق معيار W3C. - PostgreSQL —
psycopg(الإصدار 3) وpsycopg2، وبالتالي Django وSQLAlchemy على Postgres أيضاً. يصبح كل استعلام نطاقclientباسم قالب SQL (SELECT * FROM users WHERE id = ?)؛ لا تُسجَّل المعاملات ولا الصفوف. - HTTP الخارجي —
httpx(المتزامن وغير المتزامن) وrequests. يصبح كل استدعاء نطاقclientباسمMETHOD hostويحمل ترويسةtraceparentلتواصل الخدمة اللاحقة التتبّع. تُتجاهل الاستدعاءات إلى Lerix API نفسها.
error إذا رفعت استثناءً. خارج الطلب المتتبَّع
لا يفعل tracer.child(...) شيئاً.
التتبّع الحالي
await وتبديل المهام (فهو متغيّر contextvars)؛ أما
الخيط الذي تبدؤه بنفسك فلا يرثه.
أخذ العينات
الطلبات الفاشلة والطلبات التي أبلغت عن خطأ تُحفظ كاملةً دائماً. ويُرسل
النطاق الجذر لكل طلب مهما كان، فتغطي أعداد المسارات ونسبها المئوية في لوحة
التحكم 100% من الحركة.
الأخطاء والتتبّعات
كل تقرير خطأ يُرسل داخل طلب — تقارير التكاملات التلقائية وكذلك استدعاءاتك لـlerix.capture_exception() — يحمل تتبّع ذلك الطلب، فتعرض صفحة المشكلة
الشلال مضمَّناً مع تمييز الاستعلام الفاشل. أما الخطأ المُبلَّغ عنه خارج أي
طلب فيُسجَّل كالسابق دون تتبّع مرفق.
عناوين العملاء
يحمل كل نطاق طلب عنوان عميله، مُحدَّداً وفق ما يطلبه المشروع ضمن إعدادات المشروع ← التتبّع: في الوضع الافتراضيmasked تصفّر حزمة SDK آخر خانة من
IPv4 أو تقتطع IPv6 إلى /64 قبل إرسال أي شيء؛ وفي وضعَي hashed وfull
يُعالَج العنوان في جانب Lerix. يحدد عدد الوكلاء الموثوقين والترويسة كيفية
قراءته من X-Forwarded-For؛ ولا تُوثَق السلسلة كاملةً أبداً.
خيارات المصدّر
تغادر النطاقات بصيغة OTLP/HTTP JSON من خيط خلفي. إذا تعذّر الوصول إلى
Lerix API تُحسب الدفعة وتُسقط؛ لا إعادة محاولة، ولا حجب لأي طلب، ولا
استثناء يصل إلى كودك. العدّادات في
lerix.get_client().tracing.stats().