الاتصال إلى مثيل تطبيق لاستكشاف الأخطاء وإصلاحها

إشعار

يعد Azure Spring Apps هو الاسم الجديد لخدمة Azure Spring Cloud. رغم أن الخدمة تحمل اسماً جديداً، سترى الاسم القديم في بعض الأماكن لفترة من الوقت بينما نعمل على تحديث الأصول مثل لقطات الشاشة، ومقاطع الفيديو، والرسوم التخطيطية.

تنطبق هذه المقالة على: ✔️ Basic/Standard ✔️ Enterprise

توضح هذه المقالة كيفية الوصول إلى بيئة shell داخل مثيلات التطبيق الخاص بك للقيام باستكشاف الأخطاء وإصلاحها المتقدمة.

على الرغم من أن Azure Spring Apps تقدم العديد من أساليب استكشاف الأخطاء وإصلاحها المدارة، فقد ترغب في إجراء استكشاف الأخطاء وإصلاحها المتقدم باستخدام بيئة shell. على سبيل المثال، قد تحتاج إلى إنجاز مهام استكشاف الأخطاء وإصلاحها التالية:

  • استخدم أدوات Java Development Kit (JDK) مباشرة.
  • التشخيص مقابل الخدمات الخلفية للتطبيق لاتصال الشبكة وزمن انتقال استدعاء واجهة برمجة التطبيقات لكل من مثيلات الشبكة الظاهرية وغير الظاهرية.
  • تشخيص مشكلات سعة التخزين والأداء وCPU/الذاكرة.

المتطلبات الأساسية

  • Azure CLI مع ملحق Azure Spring Apps. استخدم الأمر التالي لإزالة الإصدارات السابقة وتثبيت أحدث ملحق. إذا قمت بتثبيت الملحق spring-cloud مسبقًا، قم بإلغاء تثبيته لتجنب عدم تطابق التكوين والإصدار.

    az extension remove --name spring
    az extension add --name spring
    az extension remove --name spring-cloud
    
  • تطبيق منشور في Azure Spring Apps.

  • إذا قمت بنشر حاوية مخصصة، برنامج shell. الافتراضي هو /bin/sh.

تعيين دور Azure

قبل الاتصال بمثيل تطبيق، يجب منحك الدور Azure Spring Apps الاتصال Role. يتطلب الاتصال إلى مثيل تطبيق إذن Microsoft.AppPlatform/Spring/apps/deployments/connect/actionإجراء البيانات .

يمكنك تعيين دور Azure باستخدام مدخل Azure أو Azure CLI.

استخدم الخطوات التالية لتعيين دور Azure باستخدام مدخل Microsoft Azure.

  1. افتح مدخل Azure.

  2. افتح مثيل خدمة Azure Spring Apps الحالي.

  3. حدد Access Control (IAM) من القائمة اليسرى.

  4. حدد إضافة في شريط الأوامر، ثم حدد إضافة تعيين دور.

    Screenshot of the Access Control(IAM) page showing the Add role assignment command.

  5. ابحث عن Azure Spring Apps الاتصال Role في القائمة، ثم حدد Next.

    Screenshot of the Add role assignment page showing the Azure Spring Apps Connect Role.

  6. حدد Select members، ثم ابحث عن اسم المستخدم الخاص بك.

  7. حدد مراجعة + تعيين.

الاتصال إلى مثيل تطبيق

يمكنك الاتصال بمثيل تطبيق باستخدام مدخل Azure أو Azure CLI.

استخدم الخطوات التالية للاتصال بمثيل تطبيق باستخدام مدخل Microsoft Azure.

  1. افتح مدخل Azure.

  2. افتح مثيل خدمة Azure Spring Apps الحالي.

  3. حدد التطبيقات من يسار القائمة، ثم حدد أحد تطبيقاتك.

  4. حدد وحدة التحكم من القائمة اليسرى.

  5. حدد مثيل تطبيق.

    Screenshot of the Azure portal Console page showing an app instance.

  6. حدد أو أدخل shell لتشغيله في الحاوية.

    Screenshot of the Azure portal Console page showing a Custom Shell entry.

  7. حدد اتصال.

    Screenshot of the Azure portal Console page showing the Connect command.

استكشاف أخطاء مثيل التطبيق وإصلاحها

بعد الاتصال بمثيل تطبيق، يمكنك التحقق من حالة ذاكرة كومة الذاكرة المؤقتة.

استخدم الأمر التالي للعثور على معرف عملية Java، والذي عادة ما 1يكون :

jps

يجب أن يبدو الإخراج مثل المثال التالي:

Screenshot showing the output of the jps command.

ثم استخدم الأمر التالي لتشغيل أداة JDK للتحقق من النتيجة:

jstat -gc 1

يجب أن يبدو الإخراج مثل المثال التالي:

Screenshot showing the output of the jstat command.

قطع الاتصال من مثيل التطبيق

عند الانتهاء من استكشاف الأخطاء وإصلاحها، استخدم exit الأمر لقطع الاتصال بمثيل التطبيق، أو اضغط Ctrl+dعلى .

أدوات استكشاف الأخطاء وإصلاحها

تصف القائمة التالية بعض الأدوات المثبتة مسبقا التي يمكنك استخدامها لاستكشاف الأخطاء وإصلاحها:

  • lsof - يسرد الملفات المفتوحة.
  • top - يعرض معلومات ملخص النظام والاستخدام الحالي.
  • ps - يحصل على لقطة لعملية التشغيل.
  • netstat - طباعة اتصالات الشبكة وإحصائيات الواجهة.
  • nslookup - الاستعلام عن خوادم أسماء الإنترنت بشكل تفاعلي.
  • ping - يختبر ما إذا كان يمكن الوصول إلى مضيف شبكة.
  • nc - القراءة من اتصالات الشبكة والكتابة إليها باستخدام TCP أو UDP.
  • wget - يتيح لك تنزيل الملفات والتفاعل مع واجهات برمجة تطبيقات REST.
  • df - يعرض مقدار مساحة القرص المتوفرة.

يمكنك أيضا استخدام أدوات JDK المجمعة مثل jpsو jcmdو jstat.

تعرض القائمة التالية الأدوات المتوفرة، والتي تعتمد على خطة الخدمة ونوع نشر التطبيق:

  • نشر التعليمات البرمجية المصدر و JAR والبيانات الاصطناعية:
    • خطة الاستهلاك الأساسية والقياسية والقياسية والمخصصة:
      • الأدوات الشائعة - نعم
      • أدوات JDK - نعم، لأحمال عمل Java فقط.
    • خطة المؤسسة:
      • الأدوات الشائعة - تعتمد على مكدس نظام التشغيل الذي اخترته في المنشئ. نعم، لمكدس نظام التشغيل الكامل. لا، بالنسبة إلى مكدس نظام التشغيل الأساسي.
      • أدوات JDK - نعم، لأحمال عمل Java فقط.
  • توزيع الصور المخصص: يعتمد على مجموعة الأدوات المثبتة في الصورة.

إشعار

لا يتم تضمين أدوات JDK في مسار نوع نشر التعليمات البرمجية المصدر. قم بتشغيل export PATH="$PATH:/layers/tanzu-buildpacks_microsoft-openjdk/jdk/bin" قبل تشغيل أي أوامر JDK.

القيود

استخدام بيئة shell داخل مثيلات التطبيق الخاص بك له القيود التالية:

  • نظرا لأن التطبيق يعمل كمستخدم غير جذر، لا يمكنك تنفيذ بعض الإجراءات التي تتطلب إذن الجذر. على سبيل المثال، لا يمكنك تثبيت أدوات جديدة باستخدام مدير apt / yumحزمة النظام .

  • نظرا لأن بعض قدرات Linux محظورة، فإن الأدوات التي تتطلب امتيازات خاصة، مثل tcpdump، لا تعمل.

الخطوات التالية