MCP Academy · درس

سجلات منظمة قابلة للبحث

أصدروا سجلات JSON مع ربط الطلبات ببعضها.

الدرس 2 من 413 خطوة

سجلات منظمة قابلة للبحث درس مجاني في MCP Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في MCP Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة MCP Academy 4 دروس في المجموع.

سجلات يمكنكم استخدامها فعلًا

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

لماذا يتفوّق JSON

أصدروا كل سطر سجل على هيئة كائن JSON. يصبح كل حقل قابلًا للبحث، لذا يمكنكم الاستعلام حسب الأداة أو الحالة أو المدة، من دون تحليل نصي هش.

تشريح حدث في السجل

يحمل الحدث الجيد طابعًا زمنيًا، ومستوى، ورسالة، وحقولًا للسياق. وتخبركم هذه العناصر معًا بما حدث، ومتى حدث، وسببه.

{"ts": "2026-01-01T10:00:00Z",
 "level": "info",
 "msg": "tool called",
 "tool": "search"}

اختاروا مستويات منطقية

استخدموا مستويات السجل عن قصد: debug للتفاصيل، وinfo للتدفق المعتاد، وwarning للمشكلات، وerror للأعطال. تتيح لكم المستويات رفع الضوضاء أو خفضها.

مُعرّف الارتباط

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

إنشاء مُعرّف

يُعدّ UUID مُعرّف ارتباط مناسبًا؛ فهو فريد بما يكفي لعدم حدوث تعارض بين الطلبات.

import uuid

request_id = str(uuid.uuid4())
print(request_id)

سجّلوا في stderr لا stdout

عبر stdio، يحمل stdout بروتوكول MCP نفسه. أرسلوا السجلات دائمًا إلى stderr حتى لا تُفسد رسائل JSON-RPC.

وحدة logging في Python

توفّر لكم وحدة logging المضمّنة في Python المستويات والمعالجات مجانًا. وجّهوا أحد المعالجات إلى stderr، وستكونون قد أنجزتم نصف المهمة.

import logging, sys

logging.basicConfig(stream=sys.stderr,
                    level=logging.INFO)
log = logging.getLogger("mcp")

أضيفوا الحقول لا السلاسل النصية

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

log.info("tool finished",
         extra={"tool": "search",
                "ms": 42})

لا تسجّلوا الأسرار أبدًا

تنتقل السجلات وتبقى محفوظة، لذا احجبوا الرموز المميّزة والمفاتيح والبيانات الشخصية قبل كتابتها. فتسريب سر في سجل يُعدّ اختراقًا حقيقيًا. 🔒

احتفظوا بسطر واحد لكل حدث

اكتبوا كائن JSON واحدًا لكل سطر. هذا التنسيق المفصول بالأسطر هو ما تتوقعه أدوات نقل السجلات والبحث لاستيعابه بطريقة سليمة.

تحقّق سريع

هناك تفصيل واحد يوقع كثيرًا من مؤلفي MCP في الخطأ.

مراجعة

تعلّمتم تسجيل البيانات بصيغة JSON قابلة للبحث: حدث واحد لكل سطر، ومستويات مفيدة، ومُعرّف ارتباط، وأسرار محجوبة، وإخراج إلى stderr. 📋

البدء مجانًا

تعلم Python مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
30
الدروس
120

الأسئلة الشائعة

هل درس «سجلات منظمة قابلة للبحث» مجاني؟

نعم — نص درس «سجلات منظمة قابلة للبحث» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة MCP Academy، انتقل إلى CoddyKit PRO. تتضمن دورة MCP Academy 4 دروس في المجموع.

ماذا ستتعلم في «سجلات منظمة قابلة للبحث»؟

أصدروا سجلات JSON مع ربط الطلبات ببعضها. تتمرن على MCP Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ MCP Academy؟

لا تُشترط خبرة سابقة. MCP Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «سجلات منظمة قابلة للبحث»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس MCP Academy هذا؟

نعم. كل درس في MCP Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ما ينبغي قياسه في الخادم
  2. سجلات منظمة قابلة للبحث
  3. تتبّع استدعاء أداة من البداية إلى النهاية
  4. التنبيه عند الأعطال وإساءة الاستخدام
← العودة إلى MCP Academy