تقرير الأخطاء يتيح لك عرض أخطاء نظام Luau وتحذيراتها في الوقت الفعلي لكل من الخادم والعميل. تابع تقرير الأخطاء الخاص بك قبل وبعد تحديث لعبتك لتحديد المشكلات المحتملة مبكرًا.
عرض تقرير الأخطاء الخاص بك
لعرض تقرير الأخطاء الخاص بلعبتك:
- انتقل إلى صفحتك الإنشاءات في لوحة التحكم للمبدعين واختر لعبتك.
- تحت المراقبة، اختر تقرير الأخطاء.
يمكنك عرض التحليلات للتجارب الفردية أو المملوكة للمجموعات. لرؤية الأخيرة، تحتاج إلى الحصول على أذونات المجموعة للتحليلات.
مراقبة الأخطاء والتحذيرات
يمكنك تطبيق المرشحات والمفاتيح التالية على تقرير الأخطاء الخاص بك:
- نطاق التاريخ — تصفية لآخر 1 ساعة، آخر 1 يوم، آخر 7 أيام، أو آخر 30 يومًا.
- المكان — تصفية حسب المكان.
- عرض النسخة — يضيف تعليقات توضيحية لنسخة المكان إلى مخطط الأخطاء والتحذيرات.
- الخطورة — تصفية لعرض الأخطاء، التحذيرات، أو كليهما.
- المنصة — تصفية لعرض أخطاء العميل من أجهزة محددة.
- نظام التشغيل — تصفية لعرض أخطاء العميل من أنظمة تشغيل معينة.
- الأخطاء الجديدة منذ — تصفية لعرض الأخطاء والتحذيرات الجديدة فقط منذ إصدار معين.
أسفل المرشحات والمفاتيح، يعرض مخطط عدد الأخطاء والتحذيرات للخادم والعميل وإجمالي العدد. استخدم هذا المخطط للبحث عن الزيادات في الأخطاء والتحذيرات بمرور الوقت. إذا رأيت زيادة كبيرة في الأخطاء والتحذيرات، استخدم جدول تقرير الأخطاء لاستكشاف الأخطاء وإصلاحها.

استكشاف الأخطاء والتحذيرات
يتضمن جدول الأخطاء والتحذيرات الأعمدة التالية:
| العمود | الوصف |
|---|---|
| العدد | عدد الأخطاء أو التحذيرات. |
| الخطورة | علامة الخطأ أو التحذير. |
| النوع | علامة الخادم أو العميل. |
| الرسالة | رسالة الخطأ أو التحذير. |
| أول ظهور في | الطابع الزمني لأول ظهور للرسالة. |
| إصدار أول ظهور | متاح فقط عندما يتم اختيار مكان. يظهر النسخة الأولى التي تم تسجيل الرسالة فيها. |

عرض تتبع المكدس لخطأ أو تحذير
إذا رأيت قائمة منسدلة على خطأ أو تحذير، انقر لتوسيعه ورؤية تتبع المكدس المقابل له. تتبع المكدس هو قائمة المكالمات التي كانت لعبتك تقوم بها عندما تم إلقاء الاستثناء. يمكن أن يساعدك هذا في معرفة ما الذي يحدث بشكل خاطئ.
القواعد المخصصة
تتيح لك القواعد المخصصة تحديد نماذج regex أو سلاسل نصية دقيقة لتجاهل أو جمع الأخطاء والتحذيرات تلقائيًا. يساعدك هذا في إدارة نسبة الإشارة إلى الضوضاء في تقارير الأخطاء الخاصة بك. يمكنك إنشاء ما يصل إلى 100 قاعدة لكل تجربة. يتم تقييم القواعد من الأعلى إلى الأسفل وفقًا لترتيب الأولوية. عند تطابق خطأ مع قاعدة، يتوقف المعالجة الإضافية.
إجراءات القاعدة
كل قاعدة لها إحدى الإجرائين:
| الإجراء | السلوك |
|---|---|
| تجاهل | يخفي الأخطاء المطابقة من المخطط والجدول. استخدمها للضوضاء الدائمة مثل أخطاء صوت المحرك التي لا مفر منها أو بيانات الطباعة القديمة. |
| تجمع | تجمع جميع الأخطاء المطابقة تحت اسم مجموعة مخصص (مثل "مشاكل الشبكة"، "طنين الصوت"). يظهر اسم المجموعة كصف واحد في الجدول. |
إنشاء قاعدة
هناك طريقتان لإنشاء قاعدة:
من جدول الأخطاء (داخل السطر):
- انقر على قائمة السياق (ثلاث نقاط) على أي صف خطأ.
- اختر تجاهل.

من علامة التبويب القواعد:
- انتقل إلى علامة التبويب القواعد في صفحة تقارير الأخطاء.
- انقر على إنشاء قاعدة.
- أدخل نمطًا (سلسلة دقيقة أو regex).
- اختر إجراء: تجاهل أو تجمع → [اسم المجموعة].
- احفظ القاعدة.

حقول إنشاء القاعدة
| الحقل | الوصف |
|---|---|
| النمط | السلسلة الدقيقة أو التعبير العادي لمطابقة رسائل الأخطاء. |
| الإجراء | اختر تجاهل (اخفاء الخطأ) أو تجمع → أدخل اسم مجموعة مخصص. |

تُقيم القواعد من الأعلى إلى الأسفل بناءً على ترتيب الأولوية في علامة التبويب القواعد. عند تطابق خطأ مع قاعدة، يتم تنفيذ إجراء تلك القاعدة ويتوقف تقييم القواعد الإضافية لهذا الخطأ. وهذا يمنع حدوث تعارضات مثل أن يتم تجميع خطأ بواسطة قاعدة واحدة ثم تجاهله بواسطة قاعدة لاحقة.
تؤثر القواعد فقط على الأخطاء المسجلة بعد حفظها. تظهر ملاحظة على مخططك عند تعديل القواعد.
أساسيات التعبيرات العادية
التعبير العادي (regex) هو نمط يطابق النص:
| الصيغة | المعنى | المثال |
|---|---|---|
| . | أي حرف منفرد | H.t يطابق "Hat"، "Hit"، "Hot" |
| * | صفر أو أكثر من الحرف السابق | go*d يطابق "gd"، "god"، "good" |
| + | واحد أو أكثر من الحرف السابق | go+d يطابق "god"، "good"، ولكن ليس "gd" |
| .* | أي تسلسل من الأحرف (حرف بدل) | Failed.*load يطابق "Failed to load" و "Failed xyz load" |
| \d | أي رقم (0-9) | v\d+ يطابق "v1"، "v123"، "v4488" |
| \w | أي حرف كلمة (حروف، أرقام، شرطة سفلية) | \w+ يطابق "Player123"، "my_var" |
| ^ | بداية السلسلة | ^HTTP يطابق الأخطاء التي تبدأ بـ "HTTP" |
| \/ | شريحة مائلة هاربة | rbxassetid:\/\/ يطابق "rbxassetid://" |
| \[ و \] | أقواس مربعة هاربة (مطابقة حرفية) | \[Knit\] يطابق "[Knit]" |
| (a|b) | مطابقة "a" أو "b" | (Error|Warning):.* يطابق "Error: ..." و "Warning: ..." |
نصائح سريعة:
- ابدأ بالمطابقة الدقيقة (سلسلة الخطأ الكاملة) إذا كنت ترغب في التقاط خطأ محدد واحد فقط.
- استخدم regex عندما تريد التقاط عائلة من الأخطاء المتشابهة (مثل جميع أخطاء تحميل الصوت بغض النظر عن معرف الأصل).
- اختبر نمطك مقابل بعض سلاسل الأخطاء الحقيقية قبل الحفظ للتأكد من أنه يلتقط ما تتوقعه.
يفرض النظام قاعدتين على أنماط regex الخاصة بك:
- لا يمكنك وضع مُعِدٍّ (+ أو *) داخل مجموعة متكررة. على سبيل المثال، (a+)* أو (\w+)+ يتم رفضها.
- يجب أن تبدأ بنص مثبت: لا يمكن أن تبدأ الأنماط بحرف بدل مثل .* أو .+. يجب أن يبدأ نمطك بحرف ملموس أو ركيزة (مثل ^ أو سلسلة حرفية).
أمثلة القاعدة لتنظيم تقارير الأخطاء الخاصة بك
بدلاً من رؤية العشرات من صفوف الأخطاء المنفصلة، قم بتجميع الأخطاء ذات الصلة تحت اسم مجموعة واحدة:
| استخدام الحالة | أخطاء نموذجية | النمط | الإجراء |
|---|---|---|---|
| جميع أخطاء الشبكة | HttpError: ConnectFail، HttpError: Timedout | HttpError:.* | تجمع → "مشاكل الشبكة" |
| تحذيرات DataStore | DataStore request was added to queue، DataStoreService: ... | DataStore | تجمع → "تحذيرات DataStore" |
| أخطاء واجهة اللاعب | Players.Player1.PlayerGui.Shop:12: attempt to index nil | Players\.\w+\.PlayerGui | تجمع → "أخطاء واجهة اللاعب" |
| إطار واجهة المستخدم المخصص | [UIManager] Button render failed، [UIManager] Layout overflow | \[UIManager\].* | تجمع → "نظام واجهة المستخدم" |
حدود تتبع الأخطاء
يتتبع النظام ما يصل إلى 500 خطأ فريد و500 تحذير فريد حسب العدد وأعلى 100 خطأ جديد لكل إصدار. يتم إعادة تعيين هذه الأعداد كل 6 ساعات. لتعظيم تتبع الأخطاء المفيد ضمن هذه الحدود:
- قم بإزالة المعرفات الفريدة من رسائل الأخطاء، مثل معرفات المستخدم أو الإحداثيات أو الطوابع الزمنية. الأخطاء مثل اللاعب 12345 فشل في التحميل و اللاعب 67890 فشل في التحميل تُحتسب كإدentries منفصلة. إذا قمت بتسجيلها كــ اللاعب فشل في التحميل، فإنها تتجمع في إدخال واحد مع عدد أعلى.
- استخدم القواعد المخصصة لتجميع الأخطاء ذات الصلة التي تختلف فقط بالقيم الديناميكية.
حل الأخطاء والتحذيرات
عند التحقيق في الأخطاء من صفحة تقارير الأخطاء، استخدم الأساليب التالية:
- مراجعة تتبع المكدس — توسيع صفوف الأخطاء لرؤية مسار الاتصال وتحديد البرنامج النصي ورقم السطر المحدد الذي حدث فيه الخطأ.
- تحقق من التحديثات الأخيرة — راقب الأخطاء الجديدة منذ آخر تحديث لك.
- استخدم الأدوات المدمجة:
- وحدة التحكم الخاصة بالمطورين (F9 في اللعبة): عرض الأخطاء المباشرة في الوقت الحقيقي واختبار الإصلاحات.
- Profiler البرنامج النصي: تحديد الأخطاء المتعلقة بالأداء الناتجة عن العمليات المكلفة.
- نافذة الإخراج في الاستوديو — التقاط الأخطاء أثناء التطوير قبل النشر.
- استخدم التحليلات — تحقق مما إذا كان الخطأ محددًا لمنصة معينة (سطح المكتب، الجوال، الكونسول) أو نظام التشغيل (ويندوز، ماك، iOS، أندرويد).
- اجمع تغذية راجعة من المجتمع — إذا كان لديك Discord مجتمعي أو منشور في DevForum، تحقق مما إذا كان اللاعبون يشتكون من المشكلة وأي الأجهزة أو المناطق المتأثرة.