استخدام عامل Application Insights Java In-Process في Azure Spring Apps
إشعار
سيتم إهمال الخطط الأساسية والقياسية والمؤسسة بدءا من منتصف مارس 2025، مع فترة تقاعد 3 سنوات. نوصي بالانتقال إلى Azure Container Apps. لمزيد من المعلومات، راجع إعلان إيقاف Azure Spring Apps.
سيتم إهمال الاستهلاك القياسي والخطة المخصصة بدءا من 30 سبتمبر 2024، مع إيقاف التشغيل الكامل بعد ستة أشهر. نوصي بالانتقال إلى Azure Container Apps. لمزيد من المعلومات، راجع ترحيل استهلاك Azure Spring Apps القياسي وخطة مخصصة إلى Azure Container Apps.
مع تطبيقات Spring Boot Native Image، استخدم Azure Monitor OpenTelemetry Distro / Application Insights في مشروع تطبيق Java للصورة الأصلية ل Spring Boot بدلا من وكيل Application Insights Java.
تنطبق هذه المقالة على: ✔️ الاستهلاك القياسي والمخصصة (معاينة) ✔️ Basic/Standard ✔️ Enterprise
توضح هذه المقالة كيفية مراقبة التطبيقات باستخدام عامل Application Insights Java في Azure Spring Apps.
باستخدام هذه الميزة، يمكنك:
- البحث في بيانات التعقب باستخدام عوامل تصفية مختلفة.
- عرض خريطة تبعية لتطبيقات Spring.
- فحص أداء الطلب.
- مراقبة المقاييس المباشرة في الوقت الحقيقي.
- فحص حالات فشل الطلب.
- فحص مقاييس التطبيق.
- فحص سجل التطبيقات.
يمكن أن توفر Application Insights العديد من المنظورات التي يمكن ملاحظتها، بما في ذلك:
- خريطة التطبيق
- الأداء
- الإخفاقات
- المقاييس
- القياسات المباشرة
- التوافر
- السجلات
استخدام ميزة Application Insights
عند تمكين ميزة Application Insights، يمكنك:
في جزء التنقل، حدد Application Insights لعرض صفحة نظرة عامة على Application Insights. تعرض لك صفحة Overview نظرة عامة على جميع التطبيقات قيد التشغيل.
حدد Application Map لمراجعة حالة المكالمات بين التطبيقات.
حدد الارتباط بين خدمة العملاء و
petclinic
لمراجعة المزيد من التفاصيل مثل استعلام من SQL.حدد نقطة نهاية لمراجعة جميع التطبيقات التي تقدم طلبات إلى نقطة النهاية.
في جزء التنقل، حدد Performance لمشاهدة بيانات الأداء لجميع عمليات التطبيقات وتبعياتها وأدوارها.
في جزء التنقل، حدد Failures لمشاهدة أي حالات فشل أو استثناءات غير متوقعة من تطبيقاتك.
في جزء التنقل، حدد Metrics وحدد مساحة الاسم لمشاهدة كل من مقاييس Spring Boot والمقاييس المخصصة، إن وجدت.
في جزء التنقل، حدد Live Metrics لمشاهدة مقاييس الوقت الحقيقي لأبعاد مختلفة.
في جزء التنقل، حدد Availability لمراقبة توفر تطبيقات الويب واستجابتها عن طريق إنشاء اختبارات التوفر في Application Insights.
في جزء التنقل، حدد Logs لعرض جميع سجلات التطبيقات، أو سجلات تطبيق واحد عند التصفية حسب
cloud_RoleName
.
إدارة Application Insights باستخدام مدخل Microsoft Azure
قم بتمكين عامل Java In-Process باستخدام الإجراء التالي.
انتقل إلى الخدمة | صفحة نظرة عامة على مثيل الخدمة الخاص بك ثم حدد Application Insights في قسم المراقبة .
حدد Enable Application Insights لتمكين Application Insights في Azure Spring Apps.
حدد مثيلاً موجوداً من Application Insights أو أنشئ مثيلاً جديداً.
عند تمكين Application Insights، يمكنك تكوين معدل أخذ عينات اختياري واحد (افتراضي 10.0%).
حدد حفظ لحفظ التغيير.
إشعار
لا تستخدم نفس مثيل Application Insights في مثيلات Azure Spring Apps المختلفة، أو تظهر لك بيانات مختلطة.
يمكنك استخدام المدخل لفحص الإعدادات الحالية أو تحديثها في Application Insights.
إدارة Application Insights باستخدام مدخل Microsoft Azure
حدد Application Insights.
قم بتمكين Application Insights عن طريق تحديد Edit binding أو الارتباط التشعبي Unbound.
قم بتحرير Application Insights أو معدل أخذ العينات، ثم حدد Save.
تعطيل Application Insights
حدد Application Insights.
حدد Unbind binding لتعطيل Application Insights.
تغيير إعدادات Application Insights
حدد الاسم ضمن عمود Application Insights لفتح قسم Application Insights.
تحرير روابط Application Insights buildpack في Build Service
للتحقق من الإعدادات الحالية لروابطApplication Insights buildpack وتحديثها في Build Service، اتبع الخطوات التالية:
- حدد Build Service.
- اختر منشئك.
- حدد Edit ضمن عمود Bindings.
تم العثور على إعدادات Application Insights في عنصر ApplicationInsights المدرج ضمن عمود Binding type.
حدد الارتباط التشعبي Bound، أو حدد Edit Binding ضمن القطع الناقص، لفتح وتحرير روابط Application Insights buildpack.
قم بتحرير إعدادات الربط، ثم حدد Save.
إدارة Application Insights باستخدام Azure CLI
يمكنك إدارة Application Insights باستخدام أوامر Azure CLI. في الأوامر التالية، تأكد من استبدال نص <العنصر النائب> بالقيم الموضحة. يشير العنصر النائب <service-instance-name> إلى اسم مثيل Azure Spring Apps.
تمكين "Application Insights"
لتكوين Application Insights عند إنشاء مثيل Azure Spring Apps، استخدم الأمر التالي. بالنسبة للوسيطة app-insights
، يمكنك تحديد اسم Application Insights أو معرّف المورد.
az spring create \
--resource-group <resource-group-name> \
--name "service-instance-name" \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate>
az spring create \
--resource-group <resource-group-name> \
--name "service-instance-name" \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate> \
--sku Enterprise
يمكنك أيضاً استخدام سلسلة اتصال Application Insights (المفضلة) أو مفتاح التقرير عن حالة النظام، كما هو موضح في المثال التالي.
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights-key <connection-string-or-instrumentation-key> \
--sampling-rate <sampling-rate>
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights-key <connection-string-or-instrumentation-key> \
--sampling-rate <sampling-rate> \
--sku Enterprise
تعطيل Application Insights
لتعطيل Application Insights عند إنشاء مثيل Azure Spring Apps، استخدم الأمر التالي.
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable-app-insights
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable-app-insights \
--sku Enterprise
فحص إعدادات Application Insights
للتحقق من إعدادات Application Insights لمثيل Azure Spring Apps موجود، استخدم الأمر التالي:
az spring app-insights show \
--resource-group <resource-group-name> \
--name <service-instance-name>
تحديث Application Insights
لتحديث Application Insights لاستخدام سلسلة اتصال (مفضلة) أو مفتاح تقرير عن حالة النظام، استخدم الأمر التالي:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights-key <connection-string-or-instrumentation-key> \
--sampling-rate <sampling-rate>
لتحديث Application Insights لاستخدام اسم المورد أو معرّفه، استخدم الأمر التالي:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate>
تعطيل Application Insights باستخدام أمر التحديث
لتعطيل Application Insights على مثيل Azure Spring Apps، استخدم الأمر التالي.
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable
إدارة روابط Application Insights buildpack
ينطبق هذا القسم على خطة المؤسسة فقط، ويوفر إرشادات تكمل القسم السابق.
تستخدم خطة Azure Spring Apps Enterprise روابط buildpack لدمج Azure Application Insights مع النوع ApplicationInsights
. لمزيد من المعلومات، راجع كيفية تكوين تكامل APM وشهادات CA.
لإنشاء ربط Application Insights buildpack، استخدم الأمر التالي:
az spring build-service builder buildpack-binding create \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name> \
--type ApplicationInsights \
--properties sampling-percentage=<your-sampling-percentage> \
connection-string=<your-connection-string>
لإدراج جميع روابط buildpack، والعثور على روابط Application Insights من النوع ApplicationInsights
، استخدم الأمر التالي:
az spring build-service builder buildpack-binding list \
--resource-group <your-resource-group-name> \
--service <your-service-resource-name> \
--builder-name <your-builder-name>
لاستبدال ربط Application Insights buildpack، استخدم الأمر التالي:
az spring build-service builder buildpack-binding set \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name> \
--type ApplicationInsights \
--properties sampling-percentage=<your-sampling-percentage> \
connection-string=<your-connection-string>
للحصول على ربط Application Insights buildpack، استخدم الأمر التالي:
az spring build-service builder buildpack-binding show \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name>
للحصول على ربط Application Insights buildpack، استخدم الأمر التالي:
az spring build-service builder buildpack-binding delete \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name>
Automation
تصف الأقسام التالية كيفية أتمتة التوزيع باستخدام Bicep أو قوالب Azure Resource Manager (قوالب ARM) أو Terraform.
Bicep
للنشر باستخدام ملف Bicep، انسخ المحتوى التالي إلى ملف main.bicep . لمزيد من المعلومات، راجع Microsoft.AppPlatform Spring/monitoringSettings.
param springName string
param location string = resourceGroup().location
resource spring 'Microsoft.AppPlatform/Spring@2020-07-01' = {
name: springName
location: location
properties: {}
}
resource monitorSetting 'Microsoft.AppPlatform/Spring/monitoringSettings@2020-11-01-preview' = {
parent: spring
name: 'default'
properties: {
appInsightsInstrumentationKey: '00000000-0000-0000-0000-000000000000'
appInsightsSamplingRate: 88
}
}
قوالب ARM
للتوزيع باستخدام قالب ARM، انسخ المحتوى التالي إلى ملف azuredeploy.json. لمزيد من المعلومات، راجع Microsoft.AppPlatform Spring/monitoringSettings.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"springName": {
"type": "string"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]"
}
},
"resources": [
{
"type": "Microsoft.AppPlatform/Spring",
"apiVersion": "2020-07-01",
"name": "[parameters('springName')]",
"location": "[parameters('location')]",
"properties": {}
},
{
"type": "Microsoft.AppPlatform/Spring/monitoringSettings",
"apiVersion": "2020-11-01-preview",
"name": "[format('{0}/{1}', parameters('springName'), 'default')]",
"properties": {
"appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000",
"appInsightsSamplingRate": 88
},
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springName'))]"
]
}
]
}
Terraform
لتوزيع Terraform، استخدم القالب التالي. لمزيد من المعلومات، راجع azurerm_spring_cloud_service.
provider "azurerm" {
features {}
}
resource "azurerm_resource_group" "example" {
name = "example-resources"
location = "West Europe"
}
resource "azurerm_application_insights" "example" {
name = "tf-test-appinsights"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
application_type = "web"
}
resource "azurerm_spring_cloud_service" "example" {
name = "example-springcloud"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
sku_name = "S0"
config_server_git_setting {
uri = "https://github.com/Azure-Samples/piggymetrics"
label = "config"
search_paths = ["dir1", "dir2"]
}
trace {
connection_string = azurerm_application_insights.example.connection_string
sample_rate = 10.0
}
tags = {
Env = "staging"
}
}
التنفيذ التلقائي في خطة المؤسسة معلق للدعم. تتم إضافة الوثائق بمجرد توفرها.
تحديث/ترقية عامل Java
يتم تحديث/ترقية عامل Java بانتظام باستخدام JDK، مما قد يؤثر على السيناريوهات التالية.
إشعار
يتم تحديث/ترقية إصدار JDK كل ثلاثة أشهر سنويا.
- لا تتأثر التطبيقات الموجودة التي تستخدم عامل Java قبل التحديث/الترقية.
- تستخدم التطبيقات التي تم إنشاؤها بعد التحديث/الترقية الإصدار الجديد من عامل Java.
- تتطلب التطبيقات الموجودة التي لم تستخدم عامل Java سابقا إعادة التشغيل أو إعادة التوزيع لاستخدام الإصدار الجديد من عامل Java.
يتم تحديث/ترقية عامل Java عند تحديث buildpack.
التحميل السريع لتكوين عامل Java
تحتوي Azure Spring Apps على آلية التحميل السريع لضبط إعدادات تكوين العامل دون إعادة تشغيل التطبيقات.
إشعار
آلية التحميل السريع تتأخر بدقائق.
إذا تم تمكين عامل Java بالفعل، فإن التغييرات التي تم إجراؤها على مثيل
SamplingRate
أو قيمة Application Insights لا تتطلب إعادة تشغيل التطبيق.إذا قمت بتمكين عامل Java، فيجب عليك إعادة تشغيل التطبيقات.
عند تعطيل عامل Java، تتوقف التطبيقات عن إرسال جميع بيانات المراقبة بعد تأخير في دقائق. يمكنك إعادة تشغيل التطبيقات لإزالة العامل من بيئة وقت تشغيل Java.
مطابقة المفهوم بين Azure Spring Apps وApplication Insights
Azure Spring Apps | Application Insights |
---|---|
App |
* مخطط التطبيق/الدور * المقاييس المباشرة/الدور * حالات الفشل/الأدوار/دور السحابة * الأداء/الأدوار/دور السحابة |
App Instance |
* مخطط التطبيق/مثيل الدور * المقاييس المباشرة/اسم الخدمة * حالات الفشل/الأدوار/مثيل السحابة * الأداء/الأدوار/مثيل السحابة |
يتم تغيير الاسم App Instance
من Azure Spring Apps أو إنشاؤه في السيناريوهات التالية:
- إنشاء تطبيق جديد.
- توزيع ملف JAR أو التعليمات البرمجية المصدر إلى تطبيق موجود.
- بدء توزيع أزرق/أخضر.
- إعادة تشغيل التطبيق.
- إيقاف توزيع تطبيق، ثم إعادة تشغيله.
عند تخزين البيانات في Application Insights، فإنها تحتوي على محفوظات مثيلات تطبيق Azure Spring Apps التي تم إنشاؤها أو توزيعها منذ تمكين عامل Java. على سبيل المثال، في مدخل Application Insights، يمكنك مراجعة بيانات التطبيق التي تم إنشاؤها أمس، ولكن بعد ذلك تم حذفها ضمن نطاق زمني محدد، مثل آخر 24 ساعة. توضح السيناريوهات التالية كيفية عمل ذلك:
- لقد أنشأت تطبيقاً حوالي الساعة 8:00 صباحاً اليوم من Azure Spring Apps مع تمكين عامل Java، ثم قمت بنشر ملف JAR إلى هذا التطبيق حوالي الساعة 8:10 صباحاً اليوم. بعد إجراء بعض الاختبارات، يمكنك تغيير التعليمات البرمجية وتوزيع ملف JAR جديد إلى هذا التطبيق في الساعة 8:30 صباحاً اليوم. بعد ذلك، خذ استراحة، وعندما تعود حوالي الساعة 11:00 صباحاً، يمكنك التحقق من بعض البيانات من Application Insights. أنت ترى:
- ثلاثة مثيلات في مخطط التطبيق مع نطاقات زمنية في آخر 24 ساعة، وحالات فشل وأداء ومقاييس.
- مثيل واحد في مخطط التطبيق مع نطاق زمني في الساعة الأخيرة، وحالات فشل وأداء ومقاييس.
- مثيل واحد في المقاييس المباشرة.
- لقد أنشأت تطبيقاً حوالي الساعة 8:00 صباحاً اليوم من Azure Spring Apps مع تمكين عامل Java، ثم قمت بنشر ملف JAR إلى هذا التطبيق حوالي الساعة 8:10 صباحاً اليوم. حوالي الساعة 8:30 صباحاً اليوم، يمكنك تجربة توزيع أزرق/أخضر مع ملف JAR آخر. لديك حالياً اثنين من عمليات التوزيع لهذا التطبيق. بعد استراحة حوالي الساعة 11:00 صباحاً اليوم، تريد التحقق من بعض البيانات من Application Insights. أنت ترى:
- ثلاثة مثيلات في مخطط التطبيق مع نطاقات زمنية في آخر 24 ساعة، وحالات فشل وأداء ومقاييس.
- مثيلان في مخطط التطبيق مع نطاقات زمنية في آخر 24 ساعة، وحالات فشل وأداء ومقاييس.
- مثيلان في المقاييس المباشرة.