---
read_when:
    - تغيير مخرجات التسجيل أو تنسيقاته
    - تصحيح أخطاء مخرجات CLI أو Gateway
summary: واجهات التسجيل، وسجلات الملفات، وأنماط سجلات WS، وتنسيق وحدة التحكم
title: تسجيل سجلات Gateway
x-i18n:
    generated_at: "2026-05-02T07:27:57Z"
    model: gpt-5.5
    provider: openai
    source_hash: eb5f5ccd77909e82bd2938a33514ce8361c69910eb945c731d9b2c8266174c13
    source_path: gateway/logging.md
    workflow: 16
---

# التسجيل

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

لدى OpenClaw سطحان للتسجيل:

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

## المسجّل المعتمد على الملفات

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

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

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

```bash
openclaw logs --follow
```

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

- **سجلات الملفات** يتحكم بها `logging.level` حصريًا.
- يؤثر `--verbose` فقط في **إسهاب الطرفية** (ونمط سجل WS)؛ ولا يقوم
  برفع مستوى سجل الملف.
- لالتقاط التفاصيل الخاصة بالإسهاب فقط في سجلات الملفات، اضبط `logging.level` على `debug` أو
  `trace`.
- يتضمن تسجيل التتبّع أيضًا ملخصات توقيت تشخيصية لمسارات ساخنة محددة،
  مثل تحضير مصنع أدوات Plugin. راجع
  [/tools/plugin#slow-plugin-tool-setup](/ar/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`،
وتصديرات دعم التشخيصات، وملاحظات أخطاء المزوّدين، وعرض أمر موافقة exec
، وسجلات بروتوكول WebSocket في Gateway. قد تستمر هذه الأسطح في استخدام
`logging.redactPatterns` كنماذج إضافية، لكن `redactSensitive: "off"`
لا يجعلها تُصدر أسرارًا خامًا.

## سجلات 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`

أمثلة:

```bash
# 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` لرؤيتها)

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

## ذو صلة

- [التسجيل](/ar/logging)
- [تصدير OpenTelemetry](/ar/gateway/opentelemetry)
- [تصدير التشخيصات](/ar/gateway/diagnostics)
