التسجيل
للحصول على نظرة عامة موجهة للمستخدم (CLI + Control UI + config)، راجع /logging. لدى OpenClaw “سطحان” للتسجيل:- مخرجات وحدة التحكم (ما تراه في الطرفية / Debug UI).
- سجلات الملفات (أسطر JSON) التي يكتبها مسجل البوابة.
المسجل المعتمد على الملفات
- يوجد ملف السجل الدوّار الافتراضي ضمن
/tmp/openclaw/(ملف واحد لكل يوم):openclaw-YYYY-MM-DD.log- يستخدم التاريخ المنطقة الزمنية المحلية لمضيف البوابة.
- يمكن إعداد مسار ملف السجل والمستوى عبر
~/.openclaw/openclaw.json:logging.filelogging.level
logs.tail).
ويمكن لـ CLI فعل الشيء نفسه:
- يتم التحكم في سجلات الملفات حصريًا عبر
logging.level. - يؤثر
--verboseفقط على درجة تفصيل وحدة التحكم (ونمط سجل WS)؛ ولا يرفع مستوى سجل الملف. - لالتقاط التفاصيل الخاصة بـ verbose فقط في سجلات الملفات، اضبط
logging.levelعلىdebugأوtrace.
التقاط وحدة التحكم
يلتقط CLI استدعاءاتconsole.log/info/warn/error/debug/trace ويكتبها إلى سجلات الملفات،
مع الاستمرار في طباعتها إلى stdout/stderr.
يمكنك ضبط درجة تفصيل وحدة التحكم بشكل مستقل عبر:
logging.consoleLevel(الافتراضيinfo)logging.consoleStyle(pretty|compact|json)
حجب ملخصات الأدوات
يمكن لملخصات الأدوات المفصلة (مثل🛠️ Exec: ...) إخفاء الرموز الحساسة قبل وصولها إلى
تدفق وحدة التحكم. وهذا خاص بالأدوات فقط ولا يغيّر سجلات الملفات.
logging.redactSensitive: off|tools(الافتراضي:tools)logging.redactPatterns: مصفوفة من سلاسل regex (تتجاوز القيم الافتراضية)- استخدم سلاسل regex خام (مع
giتلقائيًا)، أو/pattern/flagsإذا كنت بحاجة إلى رايات مخصصة. - يتم حجب المطابقات عبر الاحتفاظ بأول 6 + آخر 4 أحرف (عندما يكون الطول >= 18)، وإلا
***. - تغطي القيم الافتراضية تعيينات المفاتيح الشائعة، وعلامات CLI، وحقول JSON، وترويسات bearer، وكتل PEM، وبادئات الرموز الشائعة.
- استخدم سلاسل regex خام (مع
سجلات Gateway WebSocket
تطبع البوابة سجلات بروتوكول WebSocket في وضعين:- الوضع العادي (من دون
--verbose): تتم طباعة نتائج RPC “المهمة” فقط:- الأخطاء (
ok=false) - الاستدعاءات البطيئة (الحد الافتراضي:
>= 50ms) - أخطاء التحليل
- الأخطاء (
- الوضع المفصل (
--verbose): يطبع كل حركة WS للطلبات/الاستجابات.
نمط سجل WS
يدعمopenclaw gateway تبديل نمط لكل بوابة:
--ws-log auto(الافتراضي): يتم تحسين الوضع العادي؛ ويستخدم الوضع المفصل مخرجات مضغوطة--ws-log compact: مخرجات مضغوطة (طلب/استجابة مقترنان) عند التفعيل المفصل--ws-log full: مخرجات كاملة لكل إطار عند التفعيل المفصل--compact: اسم بديل لـ--ws-log compact
تنسيق وحدة التحكم (تسجيل النظام الفرعي)
يكون منسق وحدة التحكم مدركًا لـ 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لرؤيتها)