automation/troubleshooting.md
استخدم هذه الصفحة لمشكلات المجدول والتسليم (cron + heartbeat).
سلّم الأوامر
Cron لا يعمل
cron statusيبلّغ بأنه مُمكّن وبوجودnextWakeAtMsمستقبلي.- المهمة مُمكّنة ولديها جدول/منطقة زمنية صالحة.
cron runsيُظهرokأو سبب تخطٍّ صريح.
cron: scheduler disabled; jobs will not run automatically→ تم تعطيل cron في التهيئة/متغيرات البيئة.cron: timer tick failed→ تعطل نبض المجدول؛ افحص سياق المكدس/السجلات المحيطة.reason: not-dueفي خرج التشغيل → تم استدعاء تشغيل يدوي بدون--forceولم يحن موعد المهمة بعد.
تم تشغيل Cron ولكن لم يحدث تسليم
- حالة التشغيل هي
ok. - تم تعيين وضع/هدف التسليم للمهام المعزولة.
- فحص القناة يبلّغ بأن القناة الهدف متصلة.
- نجح التشغيل لكن وضع التسليم هو
none→ لا يُتوقع إرسال رسالة خارجية. - هدف التسليم مفقود/غير صالح (
channel/to) → قد ينجح التشغيل داخليًا لكنه يتجاوز الإرسال الخارجي. - أخطاء مصادقة القناة (
unauthorized،missing_scope،Forbidden) → تم حظر التسليم بسبب بيانات اعتماد/أذونات القناة.
تم كبت Heartbeat أو تخطيه
- Heartbeat مُمكّن بفاصل غير صفري.
- آخر نتيجة Heartbeat هي
ran(أو أن سبب التخطي مفهوم).
heartbeat skippedمعreason=quiet-hours→ خارجactiveHours.requests-in-flight→ المسار الرئيسي مشغول؛ تم تأجيل Heartbeat.empty-heartbeat-file→ يوجدHEARTBEAT.mdلكنه لا يحتوي على محتوى قابل للتنفيذ.alerts-disabled→ إعدادات الرؤية تكبت رسائل Heartbeat الصادرة.
ملاحظات مهمة حول المنطقة الزمنية و activeHours
Config path not found: agents.defaults.userTimezoneيعني أن المفتاح غير مُعيّن؛ يعود Heartbeat إلى المنطقة الزمنية للمضيف (أوactiveHours.timezoneإذا كانت مُعيّنة).- Cron بدون
--tzيستخدم المنطقة الزمنية لمضيف Gateway. - Heartbeat
activeHoursيستخدم دقة المنطقة الزمنية المُهيّأة (user،local، أو منطقة IANA صريحة). - الطوابع الزمنية ISO بدون منطقة زمنية تُعامل على أنها UTC لجدولات cron
at.
- تعمل المهام في وقت ساعة حائط غير صحيح بعد تغييرات المنطقة الزمنية للمضيف.
- يتم تخطي Heartbeat دائمًا خلال ساعات النهار لديك لأن
activeHours.timezoneغير صحيح.