إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يعد الاختراق التلقائي، الذي يشار إليه أيضا باسم مراقبة وقت التشغيل، أسهل طريقة لتمكين Application Insights ل Azure App Service دون الحاجة إلى أي تغييرات في التعليمات البرمجية أو تكوينات متقدمة. استنادا إلى السيناريو المحدد، قم بتقييم ما إذا كنت تحتاج إلى مراقبة أكثر تقدما من خلال الأجهزة اليدوية.
إشعار
في 31 مارس 2025، سينتهي دعم إدخال مفاتيح الأجهزة. سيستمر استيعاب مفتاح الأجهزة في العمل ولكننا لن نقوم بتوفير تحديثات أو أي دعم للميزة. الانتقال إلى سلاسل الاتصال للاستفادة من الإمكانات الجديدة.
تمكين "Application Insights"
- ASP.NET الأساسية
- NET.
- جاوة
- Node.js
- Python
هام
إذا تم الكشف عن كل من مراقبة البنية التلقائية والأجهزة اليدوية المستندة إلى SDK، يتم الالتزام بإعدادات الأجهزة اليدوية فقط. يمنع هذا الترتيب إرسال البيانات المكررة. لمعرفة المزيد، راجع استكشاف أخطاء تكامل Application Insights مع Azure App Service وإصلاحها.
إشعار
- يتم دعم إصدارات .NET Core Long Term Support (LTS) فقط.
- اقتطاع عمليات التوزيع المستقلةغير مدعوم. استخدم الأجهزة اليدوية بدلا من ذلك.
البنية التلقائية في مدخل Microsoft Azure
حدد Application Insights في قائمة التنقل اليسرى لخدمة التطبيق، ثم حدد تمكين.
إنشاء مورد جديد أو تحديد مورد Application Insights موجود لهذا التطبيق.
إشعار
عند تحديد موافق لإنشاء مورد جديد، تتم مطالبتك بتطبيق إعدادات المراقبة. يؤدي تحديد متابعة إلى ربط مورد Application Insights الجديد بخدمة التطبيق. ثم تتم إعادة تشغيل خدمة التطبيق.
بعد تحديد المورد الذي يجب استخدامه، يمكنك اختيار الطريقة التي تريد أن يجمع بها Application Insights البيانات لكل نظام أساسي لتطبيقك. ASP.NET خيارات المجموعة الأساسية مستحسنة أو معطلة.
ترقية ملحق/عامل المراقبة يدويا
- ASP.NET الأساسية
- NET.
- جاوة
- Node.js
- Python
الترقية من الإصدارات 2.8.9 وما فوق
تتم الترقية من الإصدار 2.8.9 تلقائياً، دون أي إجراءات إضافية. يتم تسليم وحدات بت المراقبة الجديدة في الخلفية إلى خدمة التطبيق الهدف، ويتم التقاطها عند إعادة تشغيل التطبيق.
للتحقق من إصدار الملحق الذي تقوم بتشغيله، انتقل إلى https://yoursitename.scm.azurewebsites.net/ApplicationInsights.
الترقية من الإصدارات 1.0.0 - 2.6.5
بدءا من الإصدار 2.8.9، يتم استخدام ملحق الموقع المثبت مسبقا. إذا كنت تستخدم إصداراً أقدم، فيمكنك التحديث بإحدى طريقتين:
الترقية عن طريق التمكين عبر مدخل Microsoft Azure: حتى إذا كان لديك ملحق Application Insights ل App Service مثبتا، فإن واجهة المستخدم تعرض الزر تمكين فقط. خلف الكواليس، تتم إزالة ملحق الموقع الخاص القديم.
-
- قم بتعيين إعدادات التطبيق لتمكين ملحق
ApplicationInsightsAgentالموقع المثبت مسبقا . لمزيد من المعلومات، راجع تمكين من خلال PowerShell. - قم بإزالة ملحق الموقع الخاص المسمى ملحق Application Insights ل Azure App Service يدويا.
- قم بتعيين إعدادات التطبيق لتمكين ملحق
إذا تم إجراء الترقية من إصدار قبل 2.5.1، فتحقق من ApplicationInsights إزالة DLLs من مجلد سلة التطبيقات. لمزيد من المعلومات، راجع استكشاف أخطاء تكامل Application Insights مع Azure App Service وإصلاحها.
تكوين ملحق/عامل المراقبة
- ASP.NET الأساسية
- NET.
- جاوة
- Node.js
- Python
لا نقدم حاليا خيارات لتكوين ملحق المراقبة ل ASP.NET Core.
تمكين المراقبة من جانب العميل
- ASP.NET الأساسية
- NET.
- جاوة
- Node.js
- Python
يتم تمكين المراقبة من جانب العميل بشكل افتراضي لتطبيقات ASP.NET Core مع المجموعة الموصى بها ، بغض النظر عما إذا كان إعداد APPINSIGHTS_JAVASCRIPT_ENABLED التطبيق موجودا أم لا.
إذا كنت ترغب في تعطيل المراقبة من جانب العميل:
حدد Settings>Configuration.
ضمن إعدادات التطبيق، قم بإنشاء إعداد تطبيق جديد بالمعلومات التالية:
-
الاسم:
APPINSIGHTS_JAVASCRIPT_ENABLED -
القيمة:
false
-
الاسم:
احفظ الإعدادات. أعد تشغيل التطبيق.
أتمتة المراقبة
لتمكين جمع القياس عن بعد باستخدام Application Insights، تحتاج فقط تعيين إعدادات التطبيق التالية:
- ASP.NET الأساسية
- NET.
- جاوة
- Node.js
- Python
تعريفات إعدادات التطبيق
| اسم إعداد التطبيق | التعريف | القيمة |
|---|---|---|
| ApplicationInsightsAgent_EXTENSION_VERSION | التمديد الرئيسي، الذي يتحكم في مراقبة وقت التشغيل. |
~2 لنظام تشغيل Windows أو ~3 لنظام تشغيل Linux |
| XDT_MicrosoftApplicationInsights_Mode | في الوضع الافتراضي، يتم تمكين الميزات الأساسية فقط لضمان الأداء الأمثل. |
disabled أو recommended. |
| XDT_MicrosoftApplicationInsights_PreemptSdk | لتطبيقات ASP.NET Core فقط. تمكين Interop (التشغيل المتداخل) مع Application Insights SDK. تحميل الملحق جنبا إلى جنب مع SDK واستخدامه لإرسال بيانات تتبع الاستخدام. (يعطل Application Insights SDK.) | 1 |
إعدادات تطبيق App Service باستخدام Azure Resource Manager
يمكن إدارة إعدادات التطبيق ل Azure App Service وتكوينها باستخدام قوالب Azure Resource Manager. يمكنك استخدام هذا الأسلوب عند نشر موارد App Service جديدة مع أتمتة Resource Manager أو تعديل إعدادات الموارد الموجودة.
البنية الأساسية لإعدادات التطبيق JSON لمورد App Service:
"resources": [
{
"name": "appsettings",
"type": "config",
"apiVersion": "2015-08-01",
"dependsOn": [
"[resourceId('Microsoft.Web/sites', variables('webSiteName'))]"
],
"tags": {
"displayName": "Application Insights Settings"
},
"properties": {
"key1": "value1",
"key2": "value2"
}
}
]
أتمتة إنشاء مورد Application Insights والارتباط بمورد App Service الذي تم إنشاؤه حديثا
لإنشاء قالب Resource Manager مع إعدادات Application Insights الافتراضية، ابدأ العملية كما لو كنت ستنشئ تطبيق ويب جديدا مع تمكين Application Insights.
في مدخل Microsoft Azure، أنشئ مورد Web App جديدا بالمعلومات المطلوبة. تمكين Application Insights في علامة التبويب Monitor + secure .
انتقل إلى Review + create، ثم حدد Download a template for automation. ينشئ هذا الخيار أحدث قالب Resource Manager مع تكوين جميع الإعدادات المطلوبة.
إشعار
القالب المثال التالي هو لتطبيق .NET 8 (LTS) الذي يعمل على Windows. ويستخدم العناصر النائبة my-monitored-web-app لاسم التطبيق ومعرف aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e الاشتراك.
لا نوصي بنسخه واستخدامه مباشرة. بدلا من ذلك، قم بإنشاء القالب الخاص بك استنادا إلى الإرشادات أعلاه.
التوسيع لعرض نموذج القالب
{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"subscriptionId": {
"type": "string"
},
"resourceGroupName": {
"type": "string"
},
"name": {
"type": "string"
},
"location": {
"type": "string"
},
"hostingPlanName": {
"type": "string"
},
"serverFarmResourceGroup": {
"type": "string"
},
"alwaysOn": {
"type": "bool"
},
"ftpsState": {
"type": "string"
},
"autoGeneratedDomainNameLabelScope": {
"type": "string"
},
"sku": {
"type": "string"
},
"skuCode": {
"type": "string"
},
"workerSize": {
"type": "string"
},
"workerSizeId": {
"type": "string"
},
"numberOfWorkers": {
"type": "string"
},
"currentStack": {
"type": "string"
},
"phpVersion": {
"type": "string"
},
"netFrameworkVersion": {
"type": "string"
}
},
"variables": {},
"resources": [
{
"apiVersion": "2022-03-01",
"name": "[parameters('name')]",
"type": "Microsoft.Web/sites",
"location": "[parameters('location')]",
"tags": null,
"dependsOn": [
"microsoft.insights/components/my-monitored-web-app",
"[concat('Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]"
],
"properties": {
"name": "[parameters('name')]",
"siteConfig": {
"appSettings": [
{
"name": "APPLICATIONINSIGHTS_CONNECTION_STRING",
"value": "[reference('microsoft.insights/components/my-monitored-web-app', '2015-05-01').ConnectionString]"
},
{
"name": "ApplicationInsightsAgent_EXTENSION_VERSION",
"value": "~2"
},
{
"name": "XDT_MicrosoftApplicationInsights_Mode",
"value": "default"
}
],
"metadata": [
{
"name": "CURRENT_STACK",
"value": "[parameters('currentStack')]"
}
],
"phpVersion": "[parameters('phpVersion')]",
"netFrameworkVersion": "[parameters('netFrameworkVersion')]",
"alwaysOn": "[parameters('alwaysOn')]",
"ftpsState": "[parameters('ftpsState')]"
},
"serverFarmId": "[concat('/subscriptions/', parameters('subscriptionId'),'/resourcegroups/', parameters('serverFarmResourceGroup'), '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]",
"clientAffinityEnabled": true,
"virtualNetworkSubnetId": null,
"httpsOnly": true,
"publicNetworkAccess": "Enabled",
"autoGeneratedDomainNameLabelScope": "[parameters('autoGeneratedDomainNameLabelScope')]"
},
"resources": [
{
"type": "Microsoft.Web/sites/basicPublishingCredentialsPolicies",
"apiVersion": "2022-09-01",
"name": "[concat(parameters('name'), '/scm')]",
"properties": {
"allow": true
},
"dependsOn": [
"[resourceId('Microsoft.Web/Sites', parameters('name'))]"
]
},
{
"type": "Microsoft.Web/sites/basicPublishingCredentialsPolicies",
"apiVersion": "2022-09-01",
"name": "[concat(parameters('name'), '/ftp')]",
"properties": {
"allow": true
},
"dependsOn": [
"[resourceId('Microsoft.Web/Sites', parameters('name'))]"
]
}
]
},
{
"apiVersion": "2018-11-01",
"name": "[parameters('hostingPlanName')]",
"type": "Microsoft.Web/serverfarms",
"location": "[parameters('location')]",
"kind": "",
"tags": null,
"dependsOn": [],
"properties": {
"name": "[parameters('hostingPlanName')]",
"workerSize": "[parameters('workerSize')]",
"workerSizeId": "[parameters('workerSizeId')]",
"numberOfWorkers": "[parameters('numberOfWorkers')]",
"zoneRedundant": false
},
"sku": {
"Tier": "[parameters('sku')]",
"Name": "[parameters('skuCode')]"
}
},
{
"apiVersion": "2020-02-02-preview",
"name": "my-monitored-web-app",
"type": "microsoft.insights/components",
"location": "centralus",
"tags": null,
"dependsOn": [
"newWorkspaceTemplate"
],
"properties": {
"ApplicationId": "[parameters('name')]",
"Request_Source": "IbizaWebAppExtensionCreate",
"Flow_Type": "Redfield",
"Application_Type": "web",
"WorkspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/DefaultResourceGroup-CUS/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-CUS"
}
},
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2021-04-01",
"name": "newWorkspaceTemplate",
"resourceGroup": "DefaultResourceGroup-CUS",
"subscriptionId": "[parameters('subscriptionId')]",
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"apiVersion": "2020-08-01",
"name": "DefaultWorkspace-aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-CUS",
"type": "Microsoft.OperationalInsights/workspaces",
"location": "centralus",
"properties": {}
}
]
}
}
}
]
}
تمكين من خلال PowerShell
لتمكين مراقبة التطبيق من خلال PowerShell، يجب تغيير إعدادات التطبيق الأساسية فقط. تمكن العينة التالية مراقبة التطبيق لموقع ويب يسمى my-monitored-web-app في مجموعة my-resource-groupالموارد . يقوم بتكوين البيانات لإرسالها إلى InstrumentationKey=012345678-abcd-ef01-2345-6789abcd سلسلة الاتصال.
إشعار
نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
إشعار
بالنسبة إلى Windows، قم بتعيين ApplicationInsightsAgent_EXTENSION_VERSION إلى ~2.
بالنسبة إلى Linux، قم بتعيين ApplicationInsightsAgent_EXTENSION_VERSION إلى ~3.
$app = Get-AzWebApp -ResourceGroupName "my-resource-group" -Name "my-monitored-web-app" -ErrorAction Stop
$newAppSettings = @{} # Case-insensitive hash map
$app.SiteConfig.AppSettings | %{$newAppSettings[$_.Name] = $_.Value} # Preserve non-Application-Insights application settings.
$newAppSettings["APPLICATIONINSIGHTS_CONNECTION_STRING"] = "InstrumentationKey=aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"; # Set the Application Insights connection string
$newAppSettings["ApplicationInsightsAgent_EXTENSION_VERSION"] = "~3"; # Enable the ApplicationInsightsAgent.
$app = Set-AzWebApp -AppSettings $newAppSettings -ResourceGroupName $app.ResourceGroup -Name $app.Name -ErrorAction Stop
استكشاف الأخطاء وإصلاحها
راجع «dedicated troubleshooting article».
الخطوات التالية
- مراجعة الأسئلة المتداولة (FAQ): الأسئلة المتداولة حول المراقبة في Azure App Service لتطبيقات .NET، Node.js، وPython، وJava.
- تمكين محلل ملفات تعريف .NET لتطبيقات Azure App Service على تطبيقك المباشر.
- تمكين التشخيص Azureلإرساله إلى Application Insights.
- مراقبة مقاييس صحة الخدمةللتأكد من توفر الخدمة والاستجابة لها.
- تلقي إعلامات التنبيهكلما وقعت أحداث تشغيلية أو تجاوزت المقاييس حداً معيناً.
- إعداد اختبارات التوفر للتطبيق الخاص بك.