مشاركة عبر


تعيين مستوى المسجل الديناميكي لاستكشاف أخطاء تطبيقات Java وإصلاحها في Azure Container Apps (معاينة)

يوفر النظام الأساسي Azure Container Apps أداة تشخيص مضمنة حصريا لمطوري Java لمساعدتهم على تصحيح أخطاء تطبيقات Java الخاصة بهم التي تعمل على Azure Container Apps واستكشاف الأخطاء وإصلاحها بسهولة وكفاءة أكبر. إحدى الميزات الرئيسية هي تغيير مستوى المسجل الديناميكي، والذي يسمح لك بالوصول إلى تفاصيل السجل المخفية بشكل افتراضي. عند التمكين، يتم جمع معلومات السجل دون تعديلات على التعليمات البرمجية أو إجبارك على إعادة تشغيل التطبيق عند تغيير مستويات السجل.

قبل البدء، تحتاج إلى ترقية ملحق Azure Container Apps في Azure CLI إلى الإصدار 0.3.51 أو أحدث.

az extension update --name containerapp

إشعار

هذه الميزة متوافقة مع التطبيقات التي تعمل على Java 8 أو الإصدارات الأحدث.

تمكين تشخيصات JVM لتطبيقات Java الخاصة بك

قبل استخدام أداة تشخيص Java، تحتاج أولا إلى تمكين تشخيصات جهاز Java الظاهري (JVM) لتطبيقات حاوية Azure. تمكن هذه الخطوة وظيفة تشخيص Java عن طريق إدخال عامل تشخيص متقدم في تطبيقك. قد تتم إعادة تشغيل تطبيقك أثناء هذه العملية.

للاستفادة من أدوات التشخيص هذه، يمكنك إنشاء تطبيق حاوية جديد مع تمكينه، أو تحديث تطبيق حاوية موجود.

لإنشاء تطبيق حاوية جديد مع تمكين تشخيصات JVM، استخدم الأمر التالي:

az containerapp create --enable-java-agent \
  --environment <ENVIRONMENT_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --name <CONTAINER_APP_NAME>

لتحديث تطبيق حاوية موجود، استخدم الأمر التالي:

az containerapp update --enable-java-agent \
  --resource-group <RESOURCE_GROUP> \
  --name <CONTAINER_APP_NAME>

تغيير مستويات مسجل وقت التشغيل

بعد تمكين تشخيصات JVM، يمكنك تغيير مستويات سجل وقت التشغيل لمسجلات معينة في تطبيق Java قيد التشغيل دون الحاجة إلى إعادة تشغيل التطبيق الخاص بك.

يستخدم النموذج التالي اسم org.springframework.boot المسجل مع مستوى infoالسجل . تأكد من تغيير هذه القيم لمطابقة اسم المسجل ومستوىه.

استخدم الأمر التالي لضبط مستويات السجل لمسجل معين:

az containerapp java logger set \
  --logger-name "org.springframework.boot" \
  --logger-level "info"
  --resource-group <RESOURCE_GROUP> \
  --name <CONTAINER_APP_NAME>

قد يستغرق الأمر ما يصل إلى دقيقتين حتى يصبح تغيير مستوى المسجل ساري المفعول. بمجرد الانتهاء، يمكنك التحقق من سجلات التطبيق من تدفقات السجل أو خيارات السجل الأخرى.

أطر عمل تسجيل Java المدعومة

يتم دعم أطر عمل تسجيل Java التالية:

مستويات السجل المدعومة بواسطة أطر عمل تسجيل مختلفة

تدعم أطر عمل التسجيل المختلفة مستويات سجل مختلفة. في النظام الأساسي لتشخيص JVM، يتم دعم بعض أطر العمل بشكل أفضل من غيرها. قبل تغيير مستويات التسجيل، تأكد من أن إطار العمل والنظام الأساسي يدعمان مستويات السجل التي تستخدمها.

Framework إيقاف التشغيل فادح خطأ حذر معلومات تتبع الأخطاء التتبع
لوجي4j2 ‏‏نعم‬ نعم نعم نعم نعم نعم ‏‏نعم‬
تسجيل الدخول ‏‏نعم‬ لا نعم نعم نعم نعم ‏‏نعم‬
تسجيل jboss لا نعم نعم نعم نعم نعم ‏‏نعم‬
النظام الأساسي ‏‏نعم‬ لا نعم نعم نعم نعم ‏‏نعم‬

الرؤية العامة لمستوي السجل

مستوى السجل فادح خطأ حذر معلومات تتبع الأخطاء التتبع
قباله
قاتل ‏‏نعم‬
خطأ ‏‏نعم‬ ‏‏نعم‬
حذر ‏‏نعم‬ نعم ‏‏نعم‬
معلومات ‏‏نعم‬ نعم نعم ‏‏نعم‬
تصحيح ‏‏نعم‬ نعم نعم نعم ‏‏نعم‬
أثر ‏‏نعم‬ نعم نعم نعم نعم ‏‏نعم‬

على سبيل المثال، إذا قمت بتعيين مستوى السجل إلى INFO، يقوم تطبيقك بطباعة السجلات ذات المستوى FATALو INFOERRORWARNو و و و لا يطبع السجلات بالمستوى DEBUG وTRACE.