التسجيل
للحصول على نظرة عامة موجهة للمستخدم (CLI + واجهة التحكم + التهيئة)، راجع /logging. يحتوي OpenClaw على «سطحين» للتسجيل:- مخرجات وحدة التحكم (ما تراه في الطرفية / واجهة التصحيح).
- سجلات الملفات (أسطر JSON) التي يكتبها مسجل Gateway.
المسجل القائم على الملفات
- ملف السجل الدوّار الافتراضي موجود ضمن
/tmp/openclaw/(ملف واحد لكل يوم):openclaw-YYYY-MM-DD.log- يستخدم التاريخ المنطقة الزمنية المحلية لمضيف Gateway.
- يمكن تهيئة مسار ملف السجل ومستوى التسجيل عبر
~/.openclaw/openclaw.json:logging.filelogging.level
logs.tail).
ويمكن لـ CLI القيام بالأمر نفسه:
- سجلات الملفات يتم التحكم بها حصريًا عبر
logging.level. - يؤثر
--verboseفقط على تفصيل وحدة التحكم (ونمط سجل WS)؛ ولا يقوم برفع مستوى سجل الملفات. - لالتقاط تفاصيل «التفصيل فقط» ضمن سجلات الملفات، اضبط
logging.levelعلىdebugأوtrace.
التقاط وحدة التحكم
يلتقط CLIconsole.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 الخام (تلقائيًا
سجلات WebSocket الخاصة بـ Gateway
يطبع 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
تنسيق وحدة التحكم (تسجيل الأنظمة الفرعية)
مُنسّق وحدة التحكم واعٍ بـ 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لرؤيتها)