Gateway

تسجيل Gateway

التسجيل

للحصول على نظرة عامة موجهة للمستخدم (CLI + واجهة التحكم + الإعدادات)، راجع /logging.

لدى OpenClaw سطحا سجل:

  • مخرجات وحدة التحكم (ما تراه في الطرفية / واجهة التصحيح).
  • سجلات الملفات (أسطر JSON) التي يكتبها مسجل Gateway.

عند بدء التشغيل، يسجل Gateway نموذج الوكيل الافتراضي المحسوم مع افتراضات الوضع التي تؤثر في الجلسات الجديدة، على سبيل المثال:

agent model: openai-codex/gpt-5.5 (thinking=medium, fast=on)

تأتي thinking من الوكيل الافتراضي أو معاملات النموذج أو الافتراضي العام للوكيل؛ عندما لا تكون مضبوطة، يعرض ملخص بدء التشغيل medium. تأتي fast من الوكيل الافتراضي أو معاملات fastMode في النموذج.

المسجل المستند إلى الملفات

  • ملف السجل المتداول الافتراضي موجود ضمن /tmp/openclaw/ (ملف واحد لكل يوم): openclaw-YYYY-MM-DD.log
    • يستخدم التاريخ المنطقة الزمنية المحلية لمضيف Gateway.
  • تدور ملفات السجل النشطة عند logging.maxFileBytes (الافتراضي: 100 MB)، مع الاحتفاظ بما يصل إلى خمسة أرشيفات مرقمة والاستمرار في كتابة ملف نشط جديد.
  • يمكن تكوين مسار ملف السجل ومستواه عبر ~/.openclaw/openclaw.json:
    • logging.file
    • logging.level

تنسيق الملف هو كائن JSON واحد لكل سطر.

تستخدم مسارات كود المحادثة والصوت الفوري والغرف المُدارة مسجل الملفات المشترك لسجلات دورة حياة محدودة. هذه السجلات مخصصة لتصحيح الأخطاء التشغيلي وتصدير سجلات OTLP؛ ولا يتم نسخ نصوص المحادثات أو حمولات الصوت أو معرفات الأدوار أو معرفات المكالمات أو معرفات عناصر المزوّد إلى سجل السجل.

يتابع تبويب السجلات في واجهة التحكم هذا الملف عبر Gateway (logs.tail). يمكن لـ CLI فعل الشيء نفسه:

openclaw logs --follow

الإسهاب مقابل مستويات السجل

  • سجلات الملفات يتحكم بها logging.level حصرا.
  • يؤثر --verbose فقط في إسهاب وحدة التحكم (ونمط سجل WS)؛ ولا يرفع مستوى سجل الملف.
  • لالتقاط التفاصيل الخاصة بالإسهاب فقط في سجلات الملفات، اضبط logging.level على debug أو trace.
  • يتضمن تسجيل التتبع أيضا ملخصات توقيت تشخيصية لمسارات ساخنة محددة، مثل تحضير مصنع أدوات Plugin. راجع /tools/plugin#slow-plugin-tool-setup.

التقاط وحدة التحكم

يلتقط CLI ‏console.log/info/warn/error/debug/trace ويكتبها إلى سجلات الملفات، مع الاستمرار في الطباعة إلى stdout/stderr.

يمكنك ضبط إسهاب وحدة التحكم بشكل مستقل عبر:

  • logging.consoleLevel (الافتراضي info)
  • logging.consoleStyle (pretty | compact | json)

التنقيح

يمكن لـ OpenClaw إخفاء الرموز الحساسة قبل أن تغادر مخرجات السجل أو نص المحادثة العملية. تُطبق سياسة تنقيح التسجيل هذه على مخارج نصوص وحدة التحكم وسجل الملفات وسجلات OTLP ونصوص محادثات الجلسات، بحيث تُخفى قيم الأسرار المطابقة قبل كتابة أسطر JSONL أو الرسائل إلى القرص.

  • logging.redactSensitive: off | tools (الافتراضي: tools)
  • logging.redactPatterns: مصفوفة من سلاسل regex (تتجاوز الافتراضيات)
    • استخدم سلاسل regex خام (تلقائيا gi)، أو /pattern/flags إذا كنت تحتاج إلى أعلام مخصصة.
    • تُخفى المطابقات مع إبقاء أول 6 + آخر 4 أحرف (الطول >= 18)، وإلا ***.
    • تغطي الافتراضيات تعيينات المفاتيح الشائعة، وأعلام CLI، وحقول JSON، وترويسات bearer، وكتل PEM، وبادئات الرموز الشائعة، وأسماء حقول بيانات اعتماد الدفع مثل رقم البطاقة، وCVC/CVV، ورمز الدفع المشترك، وبيانات اعتماد الدفع.

بعض حدود السلامة تنقح دائما بغض النظر عن logging.redactSensitive. يتضمن ذلك أحداث استدعاء الأدوات في واجهة التحكم، ومخرجات أداة sessions_history، وتصديرات دعم التشخيص، وملاحظات أخطاء المزوّد، وعرض أمر موافقة التنفيذ، وسجلات بروتوكول Gateway WebSocket. قد تظل هذه الأسطح تستخدم logging.redactPatterns كأنماط إضافية، لكن redactSensitive: "off" لا يجعلها تصدر أسرارا خاما.

سجلات Gateway WebSocket

يطبع Gateway سجلات بروتوكول WebSocket في وضعين:

  • الوضع العادي (بدون --verbose): تُطبع نتائج RPC "المهمة" فقط:
    • الأخطاء (ok=false)
    • الاستدعاءات البطيئة (الحد الافتراضي: >= 50ms)
    • أخطاء التحليل
  • وضع الإسهاب (--verbose): يطبع كل حركة طلبات/استجابات WS.

نمط سجل WS

يدعم openclaw gateway مفتاح تبديل نمط لكل Gateway:

  • --ws-log auto (الافتراضي): الوضع العادي محسن؛ يستخدم وضع الإسهاب مخرجات مضغوطة
  • --ws-log compact: مخرجات مضغوطة (طلب/استجابة مقترنان) عند الإسهاب
  • --ws-log full: مخرجات كاملة لكل إطار عند الإسهاب
  • --compact: اسم بديل لـ --ws-log compact

أمثلة:

# optimized (only errors/slow)
openclaw gateway

# show all WS traffic (paired)
openclaw gateway --verbose --ws-log compact

# show all WS traffic (full meta)
openclaw gateway --verbose --ws-log full

تنسيق وحدة التحكم (تسجيل الأنظمة الفرعية)

منسق وحدة التحكم واعٍ بـ TTY ويطبع أسطرا متسقة ذات بادئات. تبقي مسجلات الأنظمة الفرعية المخرجات مجمعة وسهلة المسح.

السلوك:

  • بادئات الأنظمة الفرعية على كل سطر (مثل [gateway]، و[canvas]، و[tailscale])
  • ألوان الأنظمة الفرعية (ثابتة لكل نظام فرعي) بالإضافة إلى تلوين المستوى
  • اللون عندما تكون المخرجات TTY أو تبدو البيئة كطرفية غنية (TERM/COLORTERM/TERM_PROGRAM)، مع احترام NO_COLOR
  • بادئات أنظمة فرعية مختصرة: تسقط gateway/ + channels/ في البداية، وتحتفظ بآخر جزأين (مثل whatsapp/outbound)
  • مسجلات فرعية حسب النظام الفرعي (بادئة تلقائية + حقل منظم { subsystem })
  • logRaw() لمخرجات QR/UX (بدون بادئة، وبدون تنسيق)
  • أنماط وحدة التحكم (مثل pretty | compact | json)
  • مستوى سجل وحدة التحكم منفصل عن مستوى سجل الملف (يحافظ الملف على التفاصيل الكاملة عند ضبط logging.level على debug/trace)
  • نصوص رسائل WhatsApp تُسجل عند debug (استخدم --verbose لرؤيتها)

يحافظ هذا على استقرار سجلات الملفات الحالية مع جعل المخرجات التفاعلية سهلة المسح.

ذو صلة