استكشاف مشكلات التعليمات البرمجية للخروج الشائعة وإصلاحها في Azure Spring Apps
إشعار
سيتم إهمال الخطط الأساسية والقياسية والمؤسسة بدءا من منتصف مارس 2025، مع فترة تقاعد 3 سنوات. نوصي بالانتقال إلى Azure Container Apps. لمزيد من المعلومات، راجع إعلان إيقاف Azure Spring Apps.
سيتم إهمال الاستهلاك القياسي والخطة المخصصة بدءا من 30 سبتمبر 2024، مع إيقاف التشغيل الكامل بعد ستة أشهر. نوصي بالانتقال إلى Azure Container Apps. لمزيد من المعلومات، راجع ترحيل استهلاك Azure Spring Apps القياسي وخطة مخصصة إلى Azure Container Apps.
تنطبق هذه المقالة على: ✔️ Enterprise ✔️ Basic/Standard
توضح هذه المقالة إجراءات استكشاف الأخطاء وإصلاحها التي يمكنك اتخاذها عند خروج تطبيقك في Azure Spring Apps باستخدام رمز خطأ. قد تتلقى رمز خطأ إذا لم ينجح نشر التطبيق الخاص بك، أو إذا تم إنهاء التطبيق عند تشغيله.
التعليمات البرمجية للخروج
تشير التعليمات البرمجية للخروج إلى سبب إنهاء التطبيق. تصف القائمة التالية بعض رموز الخروج الشائعة:
0 - تم إنهاء التطبيق لأنه تم تشغيله حتى الاكتمال. قم بتحديث تطبيق الخادم الخاص بك بحيث يتم تشغيله باستمرار.
يجب أن تقدم تطبيقات Azure المنشورة في Azure Spring Apps الخدمات بشكل مستمر. يشير رمز الخروج 0 إلى أن التطبيق لا يعمل بشكل مستمر. تحقق من السجلات ورمز المصدر.
1 - إذا خرج التطبيق برمز خروج غير صفري، فصحح التعليمات البرمجية والخدمات ذات الصلة، ثم انشر التطبيق مرة أخرى.
ضع في اعتبارك الأسباب المحتملة التالية لرمز الخروج غير الصفري:
هناك خطأ ما في تكوين Spring Boot.
على سبيل المثال، تحتاج إلى معلمة spring.db.url للاتصال بقاعدة البيانات، ولكن لم يتم العثور عليها في ملف التكوين الخاص بك.
تم قطع اتصالك بخدمة تابعة لجهة خارجية.
على سبيل المثال، تحتاج إلى الاتصال بخدمة Redis، ولكن الخدمة لا تعمل أو متوفرة.
ليس لديك حق وصول كاف إلى خدمة تابعة لجهة خارجية.
على سبيل المثال، تحتاج إلى الاتصال ب Azure Key Vault لاستيراد الشهادات في التطبيق الخاص بك، ولكن التطبيق الخاص بك ليس لديه الأذونات اللازمة للوصول إليه.
إذا كان التطبيق الخاص بك ملفا ثابتا أو تطبيقا ديناميكيا للواجهة الأمامية يقدمه خادم ويب، فشاهد قسم أخطاء الإنشاء والتوزيع الشائعة في نشر ملفات الويب الثابتة.
137 - يتم إنهاء التطبيق على الفور بواسطة النظام الأساسي للاستضافة دون فترة سماح. يمكن أن تكون التعليمة البرمجية للخروج هذه نتيجة لأحد السيناريوهات التالية:
عندما يفشل فحص الحياة، يقتل النظام الأساسي للاستضافة التطبيق على الفور بعد محاولة إنهائه وانتظار فترة سماح. تأكد من أن تطبيقك يعالج إيقاف التشغيل بأمان بشكل صحيح.
تم إنهاء التطبيق بسبب خطأ نفاد الذاكرة. طلب التطبيق الموارد التي فشل النظام الأساسي للاستضافة في توفيرها. قم بتحديث معلمات Java Virtual Machine (JVM) لتطبيقك لتقييد استخدام الموارد أو لتوسيع نطاق موارد التطبيق.
إذا كان التطبيق هو تطبيق Java، فتحقق من قيم معلمة JVM. قد تتجاوز حد الذاكرة للتطبيق الخاص بك.
على سبيل المثال، افترض أنك قمت بتعيين المعلمة Xmx JVM إلى 10 غيغابايت، ولكن التطبيق يستخدم ما يصل إلى 5 غيغابايت من الذاكرة. إنقاص قيمة Xmx أو زيادة ذاكرة التطبيق للتأكد من أن قيمة المعلمة Xmx أقل أو مساوية لحد ذاكرة التطبيق.
143 - تم إنهاء التطبيق لأنه فشل في الاستجابة لفحص سلامة بسبب خطأ نفاد الذاكرة أو خطأ آخر.
غالبا ما يتم إنشاء رمز الخطأ هذا بواسطة خطأ نفاد الذاكرة. لمزيد من المعلومات، راجع مشكلات إعادة تشغيل التطبيق الناتجة عن مشكلات نفاد الذاكرة.
يمكنك أيضا الحصول على تفاصيل من سجل التطبيق باستخدام الأمر Azure CLI az spring app logs . لمزيد من المعلومات، راجع دفق سجلات وحدة تحكم تطبيق Azure Spring Apps في الوقت الفعلي.