استكشاف أخطاء SL5 Aura وإصلاحها¶
## التشخيص السريع
ابدأ هنا دائمًا:
# Check the main log:
tail -50 log/aura_engine.log
# Is Aura running?
pgrep -a -f aura_engine.py
# Is the file watcher running?
pgrep -a type_watcher
---
## المشكلة: الهالة لا تبدأ
العَرَض: لا يوجد صوت عند بدء التشغيل، ولا توجد عملية مرئية في pgrep.
**التحقق من السجل:**
tail -30 log/aura_engine.log
**الأسباب الشائعة:**
| خطأ في السجل | إصلاح |
|---|---|
| ModuleNotFoundError | قم بتشغيل برنامج الإعداد مرة أخرى: bash setup/manjaro_arch_setup.sh |
| لا توجد وحدة باسم \'objgraph'' | تمت إعادة إنشاء .venv- أعد التثبيت:pip install -r require.txt| |العنوان قيد الاستخدام بالفعل| إنهاء العملية القديمة:pkill -9 -f aura_engine| |لم يتم العثور على النموذج| أعد تشغيل برنامج الإعداد لتنزيل النماذج المفقودة | |pygame.mixer غير متوفر` | راجع “لا يوجد صوت عند بدء التشغيل” أدناه |
---
المشكلة: لا يوجد صوت عند بدء التشغيل (pygame.mixer)¶
العَرَض: التحذير أو الخطأ بشأن pygame.mixer غير متوفر. تبدأ الهالة
ولكن لا يلعب أي أصوات.
السبب: لا يتضمن إصدار pygame لنظامك دعمًا صوتيًا أو SDL2 المكتبات الصوتية مفقودة.
** الإصلاح على القوس / مانجارو: **
sudo pacman -S sdl2_mixer
pip install pygame-ce --upgrade
**الإصلاح على Ubuntu/Debian:**
sudo apt install libsdl2-mixer-2.0-0
pip install pygame-ce --upgrade
سوف تستمر Aura في العمل بدون صوت — وهذا ليس خطأً فادحًا.
---
## المشكلة: تعطل الهالة بعد الإملاء الأول
**العَرَض:** يعمل مرة واحدة ثم يموت بصمت.
**تحقق من stderr:**
cat /tmp/aura_stderr.log | tail -30
إذا رأيت “خطأ في التجزئة” أو “مجاني مزدوج”:
هذه مشكلة معروفة في الأنظمة ذات الإصدار glibc 2.43+ (CachyOS، الأحدث Arch).
sudo pacman -S mimalloc
يتم استخدام mimalloc تلقائيًا بواسطة البرنامج النصي للبدء إذا كان مثبتًا. تأكد من أنه نشط — يجب أن ترى هذا عند بدء التشغيل:
Info: Using mimalloc for improved memory management (/usr/lib/libmimalloc.so).
---
## المشكلة: مفتاح التشغيل لا يفعل شيئًا
العَرَض: تضغط على مفتاح التشغيل السريع ولكن لا يحدث شيء — لا صوت ولا نص.
تحقق مما إذا كان مراقب الملفات قيد التشغيل:
pgrep -a type_watcher
إذا لم يظهر أي شيء، أعد تشغيل Aura:
./scripts/restart_venv_and_run-server.sh
تحقق مما إذا كان يتم إنشاء ملف التشغيل:
ls -la /tmp/sl5_record.trigger
إذا لم يتم إنشاء الملف مطلقًا، فهذا يعني أن مفتاح التشغيل السريع الخاص بك لا يعمل - انظر أدناه.
---
المشكلة: مفتاح التشغيل السريع لا يعمل على Wayland¶
العَرَض: تم تثبيت CopyQ وتكوينه، لكن الضغط على مفتاح التشغيل السريع يؤدي إلى ذلك لا شيء في جلسة Wayland.
السبب: لا تعمل مفاتيح التشغيل السريع العالمية CopyQ بشكل موثوق على Wayland بدونها تكوين إضافي. يؤثر هذا على KDE Plasma وGNOME وغيرها مؤلفو وايلاند.
الخيار 1: إعدادات نظام KDE (موصى بها لـ KDE Plasma)¶
افتح إعدادات النظام ← الاختصارات ← الاختصارات المخصصة 2. قم بإنشاء اختصار جديد من النوع Command/URL 3. اضبط الأمر على:
touch /tmp/sl5_record.triggerقم بتعيين مجموعة المفاتيح المفضلة لديك (على سبيل المثال،
F9أوCtrl+Alt+Space)### الخيار 2: dotool (يعمل على أي مكون Wayland)
# Install dotool:
sudo pacman -S dotool # Arch/Manjaro
# or
sudo apt install dotool # Ubuntu (if available)
ثم استخدم مدير الاختصارات على سطح المكتب لتشغيل:
touch /tmp/sl5_record.trigger
### الخيار 3: ydotool
sudo pacman -S ydotool
sudo systemctl enable --now ydotool
ثم قم بتكوين الاختصار الخاص بك للتشغيل:
touch /tmp/sl5_record.trigger
الخيار 4: جنوم (باستخدام إعدادات dconf / جنوم)¶
افتح الإعدادات ← لوحة المفاتيح ← الاختصارات المخصصة 2. أضف اختصارًا جديدًا بالأمر:
touch /tmp/sl5_record.trigger3. قم بتعيين مجموعة المفاتيح ### الخيار 5: CopyQ مع إصلاح Wayland
تسمح بعض أدوات تركيب Wayland لـ CopyQ بالعمل إذا بدأت بـ:
QT_QPA_PLATFORM=xcb copyq
وهذا يفرض على CopyQ استخدام XWayland، الذي يدعم مفاتيح الاختصار العالمية.
---
## المشكلة: يظهر النص ولكن بدون تصحيحات
العَرَض: الإملاء يعمل ولكن كل شيء يظل صغيرًا، ولا توجد إصلاحات نحوية.
**تحقق من تشغيل LanguageTool:**
curl -s http://127.0.0.1:8082/v2/languages | head -5
إذا أدى هذا إلى إرجاع خطأ، فهذا يعني أن LanguageTool لا يعمل. هالة يجب أن تبدأ ذلك تلقائيًا - تحقق من السجل بحثًا عن الأخطاء المتعلقة بـ LanguageTool:
grep -i "languagetool\|LT\|8082" log/aura_engine.log | tail -10
**تحقق من سجل أداة اللغة:**
cat log/languagetool_server.log | tail -20
---
## المشكلة: توقف الهالة في DEV_MODE
العَرَض: مع DEV_MODE = 1، تتوقف Aura بعد المشغل الأول وتتوقف
الاستجابة.
السبب: يؤدي ارتفاع حجم السجل من عدة سلاسل إلى زيادة التحميل على نظام التسجيل.
الإصلاح: إضافة عامل تصفية السجل في config/filters/settings_local_log_filter.py:
LOG_ONLY = [
r"Successfully",
r"CRITICAL",
r"📢📢📢 #",
r"window_title",
r":st:",
]
LOG_EXCLUDE = []
احفظ الملف — تقوم Aura بإعادة تحميل الفلتر تلقائيًا. لا حاجة لإعادة التشغيل.
---
المشكلة: plugins.zip ينمو إلى ما لا نهاية / وحدة المعالجة المركزية عالية¶
العَرَض: وحدة المعالجة المركزية بنسبة 100%، والمراوح بأقصى سرعة، وينمو “plugins.zip” دون توقف.
السبب: يقوم برنامج التعبئة الآمنة بإعادة تجميع الملفات في حلقة لا نهائية.
الإصلاح: تأكد من استبعاد ملفات .blob و.zip من فحص الطابع الزمني.
حدد “scripts/py/func/secure_packer_lib.py” حول السطر 86:
if file.startswith('.') or file.endswith('.pyc') or file.endswith('.blob') or file.endswith('.zip'):
continue
إذا كان هذا السطر مفقودا، قم بإضافته.
---
## المشكلة: عدم تفعيل القواعد
العَرَض: أنت تملي عبارة تشغيل ولكن القاعدة لا تفعل شيئًا.
**قائمة المراجعة:**
هل القاعدة في الملف الصحيح؟ (
FUZZY_MAP_pre.py= قبل LanguageTool،FUZZY_MAP.py= بعد)هل تم حفظ ملف الخريطة؟ يتم إعادة تحميل Aura عند الحفظ - تحقق من السجل
تم إعادة التحميل بنجاح.هل يتطابق النمط مع ما يكتبه Vosk بالفعل؟ تحقق من السجل ل النسخ الخام:
grep "Yielding chunk" log/aura_engine.log | tail -5
هل تم ضبط “فقط_في_النوافذ” والنافذة الخاطئة نشطة؟
هل هناك قاعدة أكثر عمومية تتطابق أولاً؟ تتم معالجة القواعد من الأعلى إلى الأسفل — وضع قواعد محددة قبل القواعد العامة.
--- ## جمع السجلات لتقارير الأخطاءعند الإبلاغ عن مشكلة، يرجى تضمين ما يلي:
# Last 100 lines of main log:
tail -100 log/aura_engine.log
# Crash output:
cat /tmp/aura_stderr.log
# System info:
uname -a
python3 --version
أرسل إلى: [GitHub Issues](https://github.com/sl5net/SL5-aura-service/issues)