يتكامل Application Insights مع Log Analytics ويرسل القياس عن بعد إلى مساحة عمل Log Analytics مشتركة. يوفر هذا الإعداد وصولا كاملا إلى ميزات Log Analytics، ويدمج السجلات في موقع واحد، ويسمح بالتحكم الموحد في الوصول المستند إلى الدور في Azure الذي يلغي الحاجة إلى استعلامات عبر التطبيقات/مساحة العمل.
تتضمن القدرات المحسنة ما يلي:
توضح لك هذه المقالة كيفية إنشاء موارد Application Insights وتكوينها. جنبا إلى جنب مع مورد Application Insights نفسه، يمكنك إضافة تكوينات مختلفة مثل تعيين الحد الأقصى اليوميوخطة التسعير. يمكنك أيضا إنشاء اختبارات التوفر، وإعداد تنبيهات قياسية، وأتمتة العملية باستخدام Azure Resource Manager.
إشعار
يتم فوترة استيعاب البيانات والاحتفاظ بها لموارد Application Insights المستندة إلى مساحة العمل من خلال مساحة عمل Log Analytics حيث توجد البيانات. لمعرفة المزيد حول الفوترة، راجع تفاصيل تسعير Azure Monitor Logs.
المتطلبات الأساسية
- اشتراك Azure نشط.
- الأذونات اللازمة لإنشاء الموارد.
المتطلبات الإضافية
للوصول إلى أوامر Application Insights Azure CLI، تحتاج أولا إلى تشغيل:
az extension add -n application-insights
إذا لم تقم بتشغيل az extension add
الأمر، فسترى رسالة خطأ تنص على az : ERROR: az monitor: 'app-insights' is not in the 'az monitor' command group. See 'az monitor --help'
.
يمكنك نشر قوالب Bicep عبر Azure CLI وAzure PowerShell وفي مدخل Microsoft Azure. تحقق من علامات التبويب المعنية للحصول على متطلبات إضافية.
يمكنك نشر قوالب ARM عبر Azure CLI وAzure PowerShell وفي مدخل Microsoft Azure. تحقق من علامات التبويب المعنية للحصول على متطلبات إضافية.
إنشاء مورد Application Insights
- قم بتسجيل الدخول إلى بوابة Azure.
- حدد Create a resource.
- افتح فئة المراقبة والتشخيص، ثم حدد Application Insights.
- أدخل جميع المعلومات ذات الصلة، ثم مراجعة + إنشاء مورد Application Insights الخاص بك.
إشعار
إذا لم تتصل بمساحة عمل Log Analytics موجودة أثناء إنشاء المورد، يتم إنشاء مورد Log Analytics جديد تلقائيا مع مورد Application Insights الخاص بك.
بعد إنشاء المورد الخاص بك، يمكنك العثور على معلومات مساحة العمل المقابلة في جزء نظرة عامة على Application Insights.
حدد نص ارتباط الأزرق للذهاب إلى مساحة عمل Log Analytics المقترنة حيث يمكنك الاستفادة من بيئة استعلام مساحة العمل الموحدة الجديدة.
إشعار
ما زلنا نقدم التوافق الكامل مع الإصدارات السابقة لاستعلامات الموارد الكلاسيكية والمصنفات والتنبيهات المستندة إلى السجل الخاصة بك في Application Insights. لاستعلام أو عرض هيكل جدول جديد معتمد على مساحة عمل أو مخطط، يجب عليك أولاً الانتقال إلى مساحة عمل Log Analytics. تحديدLogs (Analytics) في أجزاء Application Insights يتيح لك الوصول إلى تجربة الاستعلام Application Insights الكلاسيكية.
لإنشاء مورد Application Insights يستند إلى مساحة العمل، يلزم مساحة عمل Log Analytics. إذا لم يكن لديك واحد بالفعل، يمكنك استخدام أمر Azure CLI التالي لإنشاء واحد.
العناصر النائبة: <resource-group-name>
، ، <log-analytics-workspace-name>
<azure-region-name>
az monitor log-analytics workspace create --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --location <azure-region-name>
لإنشاء مورد Application Insights، قم بتشغيل أمر Azure CLI التالي في المحطة الطرفية الخاصة بك.
العناصر النائبة: <application-insights-resource-name>
، <azure-region-name>
، ، <resource-group-name>
<log-analytics-workspace-name>
az monitor app-insights component create --app <application-insights-resource-name> --location <azure-region-name> --resource-group <resource-group-name> --workspace <log-analytics-workspace-name>
لمزيد من المعلومات حول إنشاء موارد Application Insights ومساحات عمل Log Analytics باستخدام Azure CLI، راجع وثائق Azure CLI ل Application InsightsوLog Analytics.
لإنشاء مورد Application Insights يستند إلى مساحة العمل، يلزم مساحة عمل Log Analytics. إذا لم يكن لديك واحد بالفعل، يمكنك استخدام أمر Azure PowerShell التالي لإنشاء واحد.
العناصر النائبة: <resource-group-name>
، ، <log-analytics-workspace-name>
<azure-region-name>
New-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Location <azure-region-name>
لإنشاء مورد Application Insights، قم بتشغيل أمر Azure PowerShell التالي في المحطة الطرفية الخاصة بك.
العناصر النائبة: <resource-group-name>
، <application-insights-resource-name>
، <azure-region-name>
،<subscription-id>
، <log-analytics-workspace-name>
New-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -Location <azure-region-name> -WorkspaceResourceId /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>
لمزيد من المعلومات حول إنشاء موارد Application Insights ومساحات عمل Log Analytics باستخدام Azure PowerShell، راجع وثائق Azure PowerShell ل Application InsightsوLog Analytics.
لإنشاء مورد Application Insights يستند إلى مساحة العمل، يلزم مساحة عمل Log Analytics. إذا لم يكن لديك واحد بالفعل، يمكنك استخدام استدعاء REST API التالي لإنشاء واحد.
العناصر النائبة: <subscription-id>
، <resource-group-name>
، <log-analytics-workspace-name>
، ، <access-token>
<azure-region-name>
PUT https://management.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>?api-version=2023-09-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"location": "<azure-region-name>"
}
لإنشاء مورد Application Insights باستخدام واجهة برمجة تطبيقات REST، استخدم الطلب التالي.
العناصر النائبة: <subscription-id>
، <resource-group-name>
، <application-insights-resource-name>
، <access-token>
، <application-type>
، ، ، <azure-region-name>
<log-analytics-workspace-name>
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2020-02-02
Authorization: Bearer <access-token>
Content-Type: application/json
{
"kind": "<application-type>",
"location": "<azure-region-name>",
"properties": {
"Application_Type": "<application-type>",
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
لمزيد من المعلومات حول إنشاء موارد Application Insights ومساحات عمل Log Analytics باستخدام واجهة برمجة تطبيقات REST، راجع وثائق واجهة برمجة تطبيقات REST ل Application InsightsوLog Analytics.
فيما يلي كيفية إنشاء مورد Application Insights جديد باستخدام قالب Bicep.
إنشاء قالب
أنشئ ملف .bicep جديدا (على سبيل المثال، my-template.bicep)، وانسخ المحتوى التالي فيه:
param name string
param type string
param regionId string
param requestSource string
param workspaceResourceId string
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: name
location: regionId
tags: tagsArray
kind: 'other'
properties: {
Application_Type: type
Request_Source: requestSource
WorkspaceResourceId: workspaceResourceId
}
}
إنشاء ملف معلمة
أنشئ ملف .bicepparam جديدا (على سبيل المثال، my-parameters.bicepparam)، وانسخ المحتوى التالي فيه، واستبدل العناصر النائبة <application-insights-resource-name>
و <application-type>
<azure-region-name>
<subscription-id>
<resource-group-name>
<log-analytics-workspace-name>
بقيمك المحددة:
using 'my-template.bicep'
param name string = '<application-insights-resource-name>'
param type string = '<application-type>'
param regionId string = '<azure-region-name>'
param requestSource string = 'CustomDeployment'
param workspaceResourceId string = '/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<log-analytics-workspace-name>'
استخدم القالب لإنشاء مورد Application Insights جديد
في PowerShell، سجل الدخول إلى Azure باستخدام $Connect-AzAccount
.
قم بتعيين السياق الخاص بك إلى اشتراك باستخدام Set-AzContext "<subscription ID>"
.
تشغيل توزيع جديد لإنشاء مورد Application Insights جديد:
New-AzResourceGroupDeployment -ResourceGroupName <your-resource-group> -TemplateFile my-template.bicep -TemplateParameterFile my-parameters.bicepparam
-
-ResourceGroupName
هي المجموعة التي تريد إنشاء الموارد الجديدة فيها.
-
-TemplateFile
يجب أن تحدث قبل المعلمات المخصصة.
-
-TemplateParameterFile
هو اسم ملف المعلمة.
يمكنك إضافة معلمات أخرى. يمكنك العثور على أوصافها في قسم المعلمات من القالب.
فيما يلي كيفية إنشاء مورد Application Insights جديد باستخدام قالب ARM.
إنشاء قالب
قم بإنشاء ملف .json جديد (على سبيل المثال، my-template.json) وانسخ المحتوى التالي فيه:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"type": "string",
"metadata": {
"description": "Name of Application Insights resource."
}
},
"type": {
"type": "string",
"metadata": {
"description": "Type of app you are deploying. This field is for legacy reasons and will not impact the type of Application Insights resource you deploy."
}
},
"regionId": {
"type": "string",
"metadata": {
"description": "Which Azure region to deploy the resource to. This must be a valid Azure regionId."
}
},
"tagsArray": {
"type": "object",
"metadata": {
"description": "See documentation on tags: https://learn.microsoft.com/azure/azure-resource-manager/management/tag-resources."
}
},
"requestSource": {
"type": "string",
"metadata": {
"description": "Source of Azure Resource Manager deployment"
}
},
"workspaceResourceId": {
"type": "string",
"metadata": {
"description": "Log Analytics workspace ID to associate with your Application Insights resource."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('name')]",
"location": "[parameters('regionId')]",
"tags": "[parameters('tagsArray')]",
"kind": "other",
"properties": {
"Application_Type": "[parameters('type')]",
"Request_Source": "[parameters('requestSource')]",
"WorkspaceResourceId": "[parameters('workspaceResourceId')]"
}
}
]
}
إشعار
لمزيد من المعلومات حول خصائص المورد، راجع قيم الخصائص.
لا يتم استخدام Flow_Type
وRequest_Source
، ولكن يتم تضمينهما في هذا النموذج للاكتمال.
إنشاء ملف معلمة
قم بإنشاء ملف .json جديد (على سبيل المثال، my-parameters.json)، وانسخ المحتوى التالي فيه، واستبدل العناصر النائبة <application-insights-resource-name>
و <application-type>
<azure-region-name>
<subscription-id>
<resource-group-name>
<log-analytics-workspace-name>
بقيمك المحددة:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"value": "<application-insights-resource-name>"
},
"type": {
"value": "<application-type>"
},
"regionId": {
"value": "<azure-region-name>"
},
"tagsArray": {
"value": {}
},
"requestSource": {
"value": "CustomDeployment"
},
"workspaceResourceId": {
"value": "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<log-analytics-workspace-name>"
}
}
}
استخدم القالب لإنشاء مورد Application Insights جديد
في PowerShell، سجل الدخول إلى Azure باستخدام $Connect-AzAccount
.
قم بتعيين السياق الخاص بك إلى اشتراك باستخدام Set-AzContext "<subscription ID>"
.
تشغيل توزيع جديد لإنشاء مورد Application Insights جديد:
New-AzResourceGroupDeployment -ResourceGroupName <your-resource-group> -TemplateFile my-template.json -TemplateParameterFile my-parameters.json
-
-ResourceGroupName
هي المجموعة التي تريد إنشاء الموارد الجديدة فيها.
-
-TemplateFile
يجب أن تحدث قبل المعلمات المخصصة.
-
-TemplateParameterFile
هو اسم ملف المعلمة.
بعد إنشاء مورد Application Insights، يمكنك تكوين المراقبة.
احصل على سلسلة الاتصال
سلسلة الاتصال تحدد المورد الذي تريد إقران بيانات تتبع الاستخدام عن بُعد به. يمكنك أيضا استخدامه لتعديل نقاط النهاية التي يستخدمها موردك كوجهة لبيانات تتبع الاستخدام. سيكون عليك نسخ سلسلة الاتصال وإضافتها إلى التعليمة البرمجية للتطبيق أو إلى متغير البيئة.
للحصول على سلسلة الاتصال لمورد Application Insights الخاص بك:
- افتح مورد Application Insights في مدخل Microsoft Azure.
- في جزء Overview في قسم Essentials ، ابحث عن Connection string.
- إذا قمت بالمرور فوق سلسلة الاتصال، فستظهر أيقونة تسمح لك بنسخها إلى الحافظة.
للحصول على سلسلة الاتصال، قم بتشغيل أمر Azure CLI التالي في المحطة الطرفية الخاصة بك واستبدل العناصر النائبة <application-insights-resource-name>
وقيمك <resource-group-name>
المحددة:
az monitor app-insights component show --app <application-insights-resource-name> --resource-group <resource-group-name> --query connectionString --output tsv
لمزيد من المعلومات حول az monitor app-insights component show
الأمر، راجع وثائق Azure CLI.
للحصول على سلسلة الاتصال، قم بتشغيل أمر Azure PowerShell التالي في المحطة الطرفية الخاصة بك واستبدل العناصر النائبة <resource-group-name>
وقيمك <application-insights-resource-name>
المحددة:
Get-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> | Select-Object -ExpandProperty ConnectionString
لمزيد من المعلومات حول Get-AzApplicationInsights
الأمر، راجع وثائق Azure PowerShell.
لاسترداد تفاصيل مورد Application Insights، استخدم الطلب التالي واستبدل العناصر النائبة <subscription-id>
و <resource-group-name>
<application-insights-resource-name>
و و <access-token>
بقيمك المحددة:
GET https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2015-05-01
Authorization: Bearer <access-token>
ابحث عن الحقل في properties.connectionString
استجابة JSON.
لمزيد من المعلومات حول استرداد معلومات حول موارد Application Insights باستخدام واجهة برمجة تطبيقات REST، راجع وثائق واجهة برمجة تطبيقات REST.
لا ينطبق على قوالب Bicep.
مراقبة التطبيق باستخدام OpenTelemetry
لمراقبة التطبيق باستخدام OpenTelemetry، يمكنك تثبيت Azure Monitor OpenTelemetry Distro المناسب وإشارة سلسلة الاتصال إلى المورد الذي تم إنشاؤه حديثا.
للحصول على معلومات حول كيفية إعداد مراقبة التطبيق باستخدام OpenTelemetry، راجع الوثائق التالية الخاصة باللغة:
الأجهزة التلقائية
بالنسبة لخدمات المراقبة مثل Azure FunctionsوAzure App Service، يمكنك أولا إنشاء مورد Application Insights الخاص بك، ثم الإشارة إليه عند تمكين المراقبة. بدلا من ذلك، يمكنك إنشاء مورد Application Insights جديد أثناء عملية التمكين.
تعديل مساحة عمل المقترنة
بعد إنشاء مورد Application Insights، يمكنك تعديل مساحة عمل Log Analytics المقترنة.
في مورد Application Insights، حدد Properties>Change workspace>Log Analytics Workspaces.
لتغيير مساحة عمل Log Analytics، قم بتشغيل أمر Azure CLI التالي في المحطة الطرفية واستبدال العناصر النائبة <application-insights-resource-name>
و <resource-group-name>
و <log-analytics-workspace-name>
بقيمك المحددة:
az monitor app-insights component update --app <application-insights-resource-name> --resource-group <resource-group-name> --workspace <log-analytics-workspace-name>
لمزيد من المعلومات حول az monitor app-insights component update
الأمر، راجع وثائق Azure CLI.
لتغيير مساحة عمل Log Analytics، قم بتشغيل أمر Azure PowerShell التالي في المحطة الطرفية واستبدال العناصر النائبة <resource-group-name>
و <application-insights-resource-name>
<subscription-id>
و و <log-analytics-workspace-name>
بقيمك المحددة:
Update-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -WorkspaceResourceId /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>
لمزيد من المعلومات حول Update-AzApplicationInsights
الأمر، راجع وثائق Azure PowerShell.
لتغيير مساحة عمل Log Analytics باستخدام واجهة برمجة تطبيقات REST، استخدم الطلب التالي واستبدل العناصر النائبة <subscription-id>
و <resource-group-name>
<application-insights-resource-name>
<access-token>
<azure-region-name>
بقيمك <log-analytics-workspace-name>
المحددة:
PATCH https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2020-02-02
Authorization: Bearer <access-token>
Content-Type: application/json
{
"location": "<azure-region-name>",
"properties": {
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
لمزيد من المعلومات حول تعديل مساحة العمل المقترنة باستخدام واجهة برمجة تطبيقات REST، راجع وثائق واجهة برمجة تطبيقات REST.
لتغيير مساحة عمل Log Analytics، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <application-insights-resource-name>
و <azure-region-name>
<application-type>
و و <log-analytics-workspace-name>
بقيمك المحددة:
param workspaceResourceId string = '/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>'
resource appInsights 'Microsoft.Insights/components@2020-02-02-preview' = {
name: '<application-insights-resource-name>'
location: '<azure-region-name>'
properties: {
Application_Type: '<application-type>'
WorkspaceResourceId: workspaceResourceId
}
}
لتغيير مساحة عمل Log Analytics، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <application-insights-resource-name>
و <azure-region-name>
<application-type>
و و <log-analytics-workspace-name>
بقيمك المحددة:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02-preview",
"name": "<application-insights-resource-name>",
"location": "<azure-region-name>",
"properties": {
"Application_Type": "<application-type>",
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
]
}
تصدير القياس عن بعد
وظيفة التصدير المستمر القديمة غير معتمدة للموارد المستندة إلى مساحة عمل. بدلا من ذلك، استخدم إعدادات التشخيص.
في مورد Application Insights، حدد Diagnostic settings>Add diagnostic setting.
يمكنك تحديد كافة الجداول أو مجموعة فرعية من الجداول لأرشفة حساب تخزين. يمكنك أيضا البث إلى مركز أحداث.
لتصدير القياس عن بعد باستخدام إعدادات التشخيص، قم بتشغيل أمر Azure CLI التالي في المحطة الطرفية واستبدال العناصر النائبة <diagnostic-setting-name>
و <application-insights-resource-name>
<resource-group-name>
و و <storage-account-name>
بقيمك المحددة:
az monitor diagnostic-settings create --name <diagnostic-setting-name> --resource <application-insights-resource-name> --resource-group <resource-group-name> --resource-type Microsoft.Insights/components --storage-account <storage-account-name>
يتيح هذا الأمر المثال إعدادات التشخيص ويرسل جميع سجلات مورد Application Insights إلى حساب التخزين المحدد. لإرسال المقاييس أيضا، أضف --metrics '[{"category": "AllMetrics", "enabled": true}]'
إلى الأمر .
لمزيد من المعلومات حول az monitor diagnostic-settings create
الأمر، راجع وثائق Azure CLI.
لتصدير بيانات تتبع الاستخدام باستخدام إعدادات التشخيص، قم بتشغيل أمر Azure PowerShell التالي في المحطة الطرفية واستبدال العناصر النائبة <application-insights-resource-id>
و <diagnostic-setting-name>
و <storage-account-id>
بقيمك المحددة:
Set-AzDiagnosticSetting -ResourceId <application-insights-resource-id> -Name <diagnostic-setting-name> -StorageAccountId <storage-account-id> -Enabled $True
يتيح هذا الأمر المثال إعدادات التشخيص ويرسل جميع المقاييس والسجلات لمورد Application Insights إلى حساب التخزين المحدد.
لمزيد من المعلومات حول Set-AzDiagnosticSetting
الأمر، راجع وثائق Azure PowerShell.
لتصدير بيانات تتبع الاستخدام إلى حساب تخزين Azure باستخدام إعداد تشخيص، استخدم الطلب التالي واستبدل العناصر النائبة <subscription-id>
و <resource-group-name>
<application-insights-resource-name>
<diagnostic-setting-name>
<access-token>
بقيمك <storage-account-name>
المحددة:
PUT https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>/providers/Microsoft.Insights/diagnosticSettings/<diagnostic-setting-name>?api-version=2021-05-01-preview
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"storageAccountId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
يتيح هذا الاستدعاء المثال إعدادات التشخيص ويرسل جميع المقاييس والسجلات لمورد Application Insights إلى حساب التخزين المحدد.
لمزيد من المعلومات حول إنشاء إعداد تشخيص باستخدام واجهة برمجة تطبيقات REST، راجع وثائق واجهة برمجة تطبيقات REST.
لتصدير بيانات تتبع الاستخدام باستخدام إعدادات التشخيص، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <application-insights-resource-name>
و <azure-region-name>
<application-type>
<diagnostic-setting-name>
<subscription-id>
<resource-group>
بقيمك <storage-account-name>
المحددة:
param appInsightsName string = '<application-insights-resource-name>'
param location string = '<azure-region-name>'
param applicationType string = '<application-type>'
param diagnosticSettingName string = '<diagnostic-setting-name>'
param storageAccountId string = '/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>'
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: appInsightsName
location: location
kind: applicationType
properties: {
Application_Type: applicationType
}
}
resource diagnosticSetting 'Microsoft.Insights/diagnosticSettings@2021-05-01-preview' = {
name: diagnosticSettingName
scope: appInsights
properties: {
storageAccountId: storageAccountId
logs: [
{
category: 'AppRequests'
enabled: true
}
]
metrics: [
{
category: 'AllMetrics'
enabled: true
}
]
}
}
لتصدير بيانات تتبع الاستخدام باستخدام إعدادات التشخيص، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <application-insights-resource-name>
و <azure-region-name>
<application-type>
<diagnostic-setting-name>
<subscription-id>
<resource-group>
بقيمك <storage-account-name>
المحددة:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appInsightsName": {
"type": "string",
"defaultValue": "<application-insights-resource-name>"
},
"location": {
"type": "string",
"defaultValue": "<azure-region-name>"
},
"applicationType": {
"type": "string",
"defaultValue": "<application-type>"
},
"diagnosticSettingName": {
"type": "string",
"defaultValue": "<diagnostic-setting-name>"
},
"storageAccountId": {
"type": "string",
"defaultValue": "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>"
}
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('appInsightsName')]",
"location": "[parameters('location')]",
"kind": "[parameters('applicationType')]",
"properties": {
"Application_Type": "[parameters('applicationType')]"
}
},
{
"type": "Microsoft.Insights/diagnosticSettings",
"apiVersion": "2021-05-01-preview",
"name": "[parameters('diagnosticSettingName')]",
"scope": "[resourceId('Microsoft.Insights/components', parameters('appInsightsName'))]",
"properties": {
"storageAccountId": "[parameters('storageAccountId')]",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
]
}
تعيين استبقاء البيانات
لتعيين استبقاء البيانات لمساحة عمل Log Analytics المقترنة، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <log-analytics-workspace-name>
، ، <azure-region-name>
<retention-period-in-days>
بقيمك المحددة:
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: '<log-analytics-workspace-name>'
location: '<azure-region-name>'
properties: {
retentionInDays: <retention-period-in-days>
}
}
لتعيين استبقاء البيانات لمساحة عمل Log Analytics المقترنة، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <log-analytics-workspace-name>
، ، <azure-region-name>
<retention-period-in-days>
بقيمك المحددة:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"name": "<log-analytics-workspace-name>",
"location": "<azure-region-name>",
"properties": {
"retentionInDays": <retention-period-in-days>
}
}
]
}
تعيين نقطة الارتكاز اليومية
يجب تعيين الحد الأقصى اليومي بشكل مستقل لكل من Application Insights ومساحة عمل Log Analytics الأساسية. الحد الأقصى اليومي الفعال هو الحد الأدنى من الإعدادين.
إشعار
حاليا، لا يوفر Azure طريقة لتعيين الحد الأقصى اليومي ل Application Insights عبر Azure CLI.
لتغيير الحد الأقصى اليومي ل Log Analytics، قم بتشغيل أمر Azure CLI التالي في المحطة الطرفية واستبدال العناصر النائبة <resource-group-name>
و <log-analytics-workspace-name>
و <daily-cap-in-gb>
بقيمك المحددة.
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set workspaceCapping.dailyQuotaGb=<daily-cap-in-gb>
لمزيد من المعلومات حول az monitor log-analytics workspace update
الأمر، راجع وثائق Azure CLI.
لتغيير الحد الأقصى اليومي ل Application Insights وLog Analytics، قم بتشغيل أوامر Azure PowerShell التالية في المحطة الطرفية واستبدال العناصر النائبة بقيمك المحددة.
Application Insights
العناصر النائبة: <resource-group-name>
، ، <application-insights-resource-name>
<daily-cap-in-gb>
Set-AzApplicationInsightsDailyCap -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -DailyCapGB <daily-cap-in-gb>
لمزيد من المعلومات حول Set-AzApplicationInsightsDailyCap
الأمر، راجع وثائق Azure PowerShell.
تحليلات السجل
العناصر النائبة: <resource-group-name>
، ، <log-analytics-workspace-name>
<daily-cap-in-gb>
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -DailyQuotaGb <daily-cap-in-gb>
لمزيد من المعلومات حول Set-AzOperationalInsightsWorkspace
الأمر، راجع وثائق Azure PowerShell.
إشعار
حاليا، لا يوفر Azure طريقة لتعيين الحد الأقصى اليومي ل Application Insights باستخدام Azure CLI.
لتغيير الحد الأقصى اليومي ل Log Analytics، استخدم الطلب التالي واستبدل العناصر النائبة <subscription-id>
<resource-group-name>
<log-analytics-workspace-name>
<access-token>
<azure-region-name>
<daily-cap-in-gb>
و بقيمك المحددة:
العناصر النائبة:
PATCH https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>?api-version=2023-09-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"location": '<azure-region-name>',
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <daily-cap-in-gb>,
},
}
}
لمزيد من المعلومات حول إعداد الحد الأقصى اليومي لتحليلات السجل، راجع وثائق واجهة برمجة تطبيقات REST
إشعار
حاليا، لا يوفر Azure طريقة لتعيين الحد الأقصى اليومي ل Application Insights باستخدام قالب Bicep.
لتعيين الحد الأقصى اليومي ل Log Analytics، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <log-analytics-workspace-name>
و <azure-region-name>
و <daily-cap-in-gb>
بقيمك المحددة:
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: '<log-analytics-workspace-name>'
location: '<azure-region-name>'
properties: {
dailyQuotaGb: <daily-cap-in-gb>
}
}
إشعار
حاليا، لا يوفر Azure طريقة لتعيين الحد الأقصى اليومي ل Application Insights باستخدام قالب ARM.
لتعيين الحد الأقصى اليومي ل Log Analytics، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <log-analytics-workspace-name>
و <azure-region-name>
و <daily-cap-in-gb>
بقيمك المحددة:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2023-09-01",
"name": "<log-analytics-workspace-name>",
"location": "<azure-region-name>",
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <daily-cap-in-gb>
}
}
}
]
}
قم بتعيين خطة التسعير
يمكن تعيين خطة التسعير لموارد Application Insights في مساحة عمل Log Analytics المقترنة. لمزيد من المعلومات حول خطط التسعير المتوفرة، راجع حسابات وخيارات تكلفة Azure Monitor Logs.
إشعار
إذا كنت ترى رسوما غير متوقعة أو تكاليف عالية في Application Insights، يمكن أن يساعد هذا الدليل. وهو يغطي الأسباب الشائعة مثل ارتفاع حجم بيانات تتبع الاستخدام، وارتفاعات استيعاب البيانات، وأخذ العينات التي تم تكوينها بشكل خاطئ. من المفيد بشكل خاص إذا كنت تقوم باستكشاف المشكلات المتعلقة بارتفاع التكلفة أو حجم بيانات تتبع الاستخدام أو أخذ العينات لا يعمل أو الحد الأقصى للبيانات أو الاستيعاب العالي أو الفوترة غير المتوقعة. للبدء، راجع استكشاف أخطاء استيعاب البيانات العالية وإصلاحها في Application Insights.
لتعيين خطة التسعير، قم بتشغيل أحد أوامر Azure CLI التالية في المحطة الطرفية الخاصة بك واستبدل العناصر النائبة <log-analytics-workspace-name>
و <azure-region-name>
و (إن أمكن) <capacity-reservation-in-gb>
بقيمك المحددة:
الدفع أولا بأول
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set PerGB2018
مستوى الالتزام
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set CapacityReservation --level <capacity-reservation-in-gb>
لمزيد من المعلومات حول az monitor log-analytics workspace update
الأمر، راجع وثائق Azure CLI.
لتعيين خطة التسعير، قم بتشغيل أحد أوامر Azure PowerShell التالية في المحطة الطرفية الخاصة بك واستبدل العناصر النائبة <log-analytics-workspace-name>
و <azure-region-name>
و (إن أمكن) <capacity-reservation-in-gb>
بقيمك المحددة:
الدفع أولا بأول
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Sku perb2018
مستوى الالتزام
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Sku capacityreservation -SkuCapacity <capacity-reservation-in-gb>
لمزيد من المعلومات حول Set-AzOperationalInsightsWorkspace
الأمر، راجع وثائق Azure PowerShell.
لتعيين خطة التسعير باستخدام واجهة برمجة تطبيقات REST، استخدم أحد الطلبات التالية واستبدل العناصر <subscription-id>
النائبة و <resource-group-name>
<log-analytics-workspace-name>
<access-token>
و (إن أمكن) <capacity-reservation-in-gb>
بقيمك المحددة:
الدفع أولا بأول
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>/pricingPlans/current?api-version=2017-10-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
مستوى الالتزام
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>/pricingPlans/current?api-version=2017-10-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": <capacity-reservation-in-gb>
}
}
}
لمزيد من المعلومات حول تعيين خطة التسعير باستخدام واجهة برمجة تطبيقات REST، راجع وثائق واجهة برمجة تطبيقات REST.
لتعيين خطة التسعير باستخدام Bicep، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <log-analytics-workspace-name>
و <azure-region-name>
و لطبقة الالتزام أيضا <capacity-reservation-in-gb>
بقيمك المحددة:
الدفع أولا بأول
param workspaceName string = '<log-analytics-workspace-name>'
param workspaceRegion string = '<azure-region-name>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: workspaceName
location: workspaceRegion
properties: {
sku: {
name: 'pergb2018'
}
}
}
مستوى الالتزام
param workspaceName string = '<log-analytics-workspace-name>'
param workspaceRegion string = '<azure-region-name>'
param capacityReservationLevel int = '<capacity-reservation-in-gb>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: workspaceName
location: workspaceRegion
properties: {
sku: {
name: 'capacityreservation'
capacityReservationLevel: capacityReservationLevel
}
}
}
لمزيد من المعلومات حول تحديث Microsoft.OperationalInsights/workspaces
المورد باستخدام Bicep، راجع وثائق القوالب.
لتعيين خطة التسعير باستخدام قالب ARM، الصق التعليمات البرمجية التالية في القالب الخاص بك واستبدل العناصر النائبة <log-analytics-workspace-name>
و <azure-region-name>
و لطبقة الالتزام أيضا <capacity-reservation-in-gb>
بقيمك المحددة:
الدفع أولا بأول
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<log-analytics-workspace-name>"
},
"workspaceRegion": {
"type": "string",
"defaultValue": "<azure-region-name>"
}
},
"resources": [
{
"name": "[parameters('workspaceName')]",
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"location": "[parameters('workspaceRegion')]",
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
]
}
مستوى الالتزام
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<log-analytics-workspace-name>"
},
"workspaceRegion": {
"type": "string",
"defaultValue": "<azure-region-name>"
},
"capacityReservationLevel": {
"type": "int",
"defaultValue": <capacity-reservation-in-gb>
}
},
"resources": [
{
"name": "[parameters('workspaceName')]",
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"location": "[parameters('workspaceRegion')]",
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": "[parameters('capacityReservationLevel')]"
}
}
}
]
}
لمزيد من المعلومات حول تحديث Microsoft.OperationalInsights/workspaces
المورد باستخدام قالب ARM، راجع وثائق القوالب.
تعطيل إخفاء IP
بشكل افتراضي، لا يخزن Application Insights عناوين IP. لمعرفة كيفية تعطيل إخفاء IP، راجع تحديد الموقع الجغرافي ومعالجة عنوان IP.
إنشاء موارد إضافية
إنشاء اختبار توفر
لإنشاء اختبار توفر قياسي بالإعدادات الافتراضية، قم بتشغيل أمر Azure CLI التالي في المحطة الطرفية واستبدال العناصر النائبة <resource-group-name>
و <azure-region-name>
<web-test-name>
<url>
<subscription-id>
بقيمك <application-insights-resource-name>
المحددة:
az monitor app-insights web-test create --resource-group <resource-group-name> \
--location <azure-region-name> \
--web-test-kind standard \
--name <web-test-name> \
--defined-web-test-name <web-test-name> \
--request-url <url> \
--retry-enabled true \
--ssl-check true \
--ssl-lifetime-check 7 \
--frequency 300 \
--locations Id="us-ca-sjc-azr" \
--locations Id="apac-sg-sin-azr" \
--locations Id="us-il-ch1-azr" \
--locations Id="us-va-ash-azr" \
--locations Id="emea-au-syd-edge" \
--http-verb GET \
--timeout 120 \
--expected-status-code 200 \
--enabled true \
--tags hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>=Resource
لمزيد من المعلومات حول az monitor app-insights web-test create
الأمر، راجع وثائق Azure CLI.
إشعار
تختلف منطقة اختبار الويب (-location
) عن الموقع الجغرافي (-locations
لاحظ الشكل الجمع) الذي يمكن تحديد متعدد منه.
-location
يشير إلى منطقة Azure حيث يتم إنشاء اختبار الويب واستضافته، بينما -locations
يشير إلى الموقع الجغرافي أو المواقع التي يتم تنفيذ اختبار الويب منها. للحصول على قائمة كاملة بجميع المواقع الجغرافية، راجع اختبارات توفر Application Insights.
لإنشاء اختبار توفر قياسي بإعدادات افتراضية، قم بتشغيل أمر Azure PowerShell التالي في المحطة الطرفية الخاصة بك واستبدل العناصر النائبة <resource-group-name>
و <azure-region-name>
<web-test-name>
<url>
<subscription-id>
بقيمك <application-insights-resource-name>
المحددة:
$geoLocation = @()
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-ca-sjc-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "apac-sg-sin-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-il-ch1-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-va-ash-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "emea-au-syd-edge"
New-AzApplicationInsightsWebTest -ResourceGroupName <resource-group-name> `
-Location <azure-region-name> `
-Name <web-test-name> `
-TestName <web-test-name> `
-Kind standard `
-RequestUrl <url> `
-RetryEnabled `
-RuleSslCheck `
-RuleSslCertRemainingLifetimeCheck 7 `
-Frequency 300 `
-GeoLocation $geoLocation `
-RequestHttpVerb GET `
-Timeout 120 `
-RuleExpectedHttpStatusCode 200 `
-Enabled `
-Tag @{"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>" = "Resource"}
لمزيد من المعلومات حول New-AzApplicationInsightsWebTest
الأمر، راجع وثائق Azure PowerShell.
إشعار
تختلف منطقة اختبار الويب (-Location
) عن الموقع الجغرافي (-GeoLocation
) الذي يمكن تحديد متعدد منه.
-Location
يشير إلى منطقة Azure حيث يتم إنشاء اختبار الويب واستضافته، بينما -GeoLocation
يشير إلى الموقع الجغرافي أو المواقع التي يتم تنفيذ اختبار الويب منها. للحصول على قائمة كاملة بجميع المواقع الجغرافية، راجع اختبارات توفر Application Insights.
لإنشاء اختبار توفر قياسي بإعدادات افتراضية باستخدام واجهة برمجة تطبيقات REST، استخدم الطلب التالي واستبدل العناصر النائبة <subscription-id>
و <resource-group-name>
<application-insights-resource-name>
<web-test-name>
<access-token>
<azure-region-name>
بقيمك <url>
المحددة:
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>/webtests/<web-test-name>?api-version=2021-08-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"location": "<azure-region-name>",
"properties": {
"Name": "<web-test-name>",
"SyntheticMonitorId": "<web-test-name>",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Request": {
"RequestUrl": "<url>",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SslCheck": true,
"SslCertRemainingLifetimeCheck": 7
},
"Locations": [
{
"Id": "us-ca-sjc-azr"
},
{
"Id": "apac-sg-sin-azr"
},
{
"Id": "us-il-ch1-azr"
},
{
"Id": "us-va-ash-azr"
},
{
"Id": "emea-au-syd-edge"
}
]
},
"Tags": {
"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>": "Resource"
}
}
إشعار
تختلف منطقة اختبار الويب (-location
) عن الموقع الجغرافي (-Locations
لاحظ الشكل الجمع) الذي يمكن تحديد متعدد منه.
-location
يشير إلى منطقة Azure حيث يتم إنشاء اختبار الويب واستضافته، بينما -Locations
يشير إلى الموقع الجغرافي أو المواقع التي يتم تنفيذ اختبار الويب منها. للحصول على قائمة كاملة بجميع المواقع الجغرافية، راجع اختبارات توفر Application Insights.
لمعرفة المزيد حول إنشاء وتكوين اختبارات الويب باستخدام واجهة برمجة تطبيقات REST، راجع وثائق واجهة برمجة تطبيقات REST.
لإنشاء اختبار توفر قياسي مع الإعدادات الافتراضية باستخدام Bicep، أضف التعليمات البرمجية التالية إلى القالب الخاص بك واستبدل العناصر النائبة <web-test-name>
و <azure-region-name>
<subscription-id>
<resource-group-name>
<application-insights-resource-name>
<url>
بقيمك المحددة:
resource webTest 'microsoft.insights/webtests@2022-06-15' = {
name: '<web-test-name>'
location: '<azure-region-name>'
tags: {
'hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>': 'Resource'
}
properties: {
SyntheticMonitorId: '<web-test-name>'
Name: '<web-test-name>'
Enabled: true
Frequency: 300
Timeout: 120
Kind: 'standard'
RetryEnabled: true
Locations: [
{
Id: 'us-ca-sjc-azr'
}
{
Id: 'apac-sg-sin-azr'
}
{
Id: 'us-il-ch1-azr'
}
{
Id: 'us-va-ash-azr'
}
{
Id: 'emea-au-syd-edge'
}
]
Request: {
RequestUrl: '<url>'
HttpVerb: 'GET'
}
ValidationRules: {
ExpectedHttpStatusCode: 200
SSLCheck: true
SSLCertRemainingLifetimeCheck: 7
}
}
}
إشعار
تختلف منطقة اختبار الويب (location
) عن الموقع الجغرافي (Locations
) الذي يمكن تحديد متعدد منه.
location
يشير إلى منطقة Azure حيث يتم إنشاء اختبار الويب واستضافته، بينما Locations
يشير إلى الموقع الجغرافي أو المواقع التي يتم تنفيذ اختبار الويب منها. للحصول على قائمة كاملة بجميع المواقع الجغرافية، راجع اختبارات توفر Application Insights.
لمزيد من المعلومات حول إنشاء اختبارات التوفر باستخدام Bicep، راجع Microsoft.Insights webtests.
لإنشاء اختبار توفر قياسي مع الإعدادات الافتراضية باستخدام قالب ARM، أضف التعليمات البرمجية التالية إلى القالب الخاص بك واستبدل العناصر النائبة <web-test-name>
و <azure-region-name>
<subscription-id>
<resource-group-name>
<application-insights-resource-name>
<url>
بقيمك المحددة:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "microsoft.insights/webtests",
"apiVersion": "2022-06-15",
"name": "<web-test-name>",
"location": "<azure-region-name>",
"tags": {
"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>": "Resource"
},
"properties": {
"SyntheticMonitorId": "<web-test-name>",
"Name": "<web-test-name>",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Locations": [
{
"Id": "us-ca-sjc-azr"
},
{
"Id": "apac-sg-sin-azr"
},
{
"Id": "us-il-ch1-azr"
},
{
"Id": "us-va-ash-azr"
},
{
"Id": "emea-au-syd-edge"
}
],
"Request": {
"RequestUrl": "<url>",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SSLCheck": true,
"SSLCertRemainingLifetimeCheck": 7
}
}
}
]
}
إشعار
تختلف منطقة اختبار الويب (location
) عن الموقع الجغرافي (Locations
) الذي يمكن تحديد متعدد منه.
location
يشير إلى منطقة Azure حيث يتم إنشاء اختبار الويب واستضافته، بينما Locations
يشير إلى الموقع الجغرافي أو المواقع التي يتم تنفيذ اختبار الويب منها. للحصول على قائمة كاملة بجميع المواقع الجغرافية، راجع اختبارات توفر Application Insights.
لمزيد من المعلومات حول إنشاء اختبارات التوفر باستخدام قالب ARM، راجع Microsoft.Insights webtests.
قم بإضافة تنبيه متري
تلميح
يأتي كل مورد Application Insights مع مقاييس متوفرة خارج الصندوق. إذا كانت المكونات المنفصلة تقدم تقريرا إلى نفس مورد Application Insights، فقد لا يكون من المنطقي التنبيه على هذه المقاييس.
لأتمتة إنشاء تنبيهات قياسية، راجع مقالة قالب التنبيهات القياسية.
إنشاء المزيد من موارد Application Insights
كم عدد موارد Application Insights التي يجب توزيعها؟
عند تطوير الإصدار التالي من تطبيق ويب، لا تريد خلط بيانات تتبع الاستخدام Application Insights من الإصدار الجديد والإصدار الذي تم إصداره بالفعل.
لتجنب الارتباك، أرسل بيانات تتبع الاستخدام من مراحل تطوير مختلفة لفصل موارد Application Insights مع سلسلة الاتصال منفصلة.
إذا كان النظام الخاص بك مثيلا لخدمات Azure Cloud، فهناك طريقة أخرى لإعداد سلسلة الاتصال منفصلة.
متى تستخدم مورد حكمة التطبيق لمرة واحدة
استخدم مورد Application Insights واحدا من أجل:
- تبسيط إدارة DevOps/ITOps للتطبيقات المنشورة معا، والتي يتم تطويرها وإدارتها عادة من قبل نفس الفريق.
- مركزية مؤشرات الأداء الرئيسية، مثل أوقات الاستجابة ومعدلات الفشل، في لوحة المعلومات بشكل افتراضي. تقسيم حسب اسم الدور في مستكشف المقاييس إذا لزم الأمر.
- عندما لا تكون هناك حاجة لإدارة مختلفة للتحكم في الوصول استنادا إلى الدور في Azure بين مكونات التطبيق.
- عندما تكون معايير تنبيه المقاييس المتطابقة، تكون عمليات التصدير المستمرة وإدارة الفوترة/الحصص النسبية عبر المكونات كافية.
- عندما يكون من المقبول لمفتاح API الوصول إلى البيانات من جميع المكونات بالتساوي، ويلبي 10 مفاتيح API الاحتياجات عبر جميع المكونات.
- عندما تكون نفس إعدادات الكشف الذكي وتكامل عنصر العمل مناسبة عبر جميع الأدوار.
إشعار
إذا كنت ترغب في دمج موارد Application Insights متعددة، يمكنك توجيه مكونات التطبيق الحالية إلى مورد Application Insights جديد ومدمج. لا يتم نقل بيانات تتبع الاستخدام المخزنة في المورد القديم إلى المورد الجديد. احذف المورد القديم فقط عندما يكون لديك ما يكفي من بيانات تتبع الاستخدام في المورد الجديد لاستمرارية الأعمال.
اعتبارات أخرى
لتنشيط تجارب المدخل، أضف تعليمة برمجية مخصصة لتعيين قيم ذات معنى إلى سمة Cloud_RoleName . بدون هذه القيم، لا تعمل ميزات المدخل.
بالنسبة لتطبيقات Azure Service Fabric والخدمات السحابية الكلاسيكية، تقوم SDK تلقائيا بتكوين الخدمات عن طريق القراءة من بيئة دور Azure. بالنسبة لأنواع التطبيقات الأخرى، تحتاج عادة إلى تعيينه بشكل صريح.
لا يمكن للمقاييس المباشرة تقسيم البيانات حسب اسم الدور.
الإصدار وتعقب الإصدار
عند نشر إصدار جديد من التطبيق الخاص بك، تريد أن تكون قادرا على فصل بيانات تتبع الاستخدام عن بنيات مختلفة. يمكنك تعيين خاصية إصدار التطبيق حتى تتمكن من تصفية نتائج البحث ومستكشف المقاييس.
هناك عدة طرق مختلفة لتعيين خاصية إصدار التطبيق.
الخيار 1: تعيين الإصدار مباشرة
أضف السطر telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version;
إلى التعليمة البرمجية للتهيئة للتطبيق الخاص بك.
للتأكد من تعيين جميع TelemetryClient
المثيلات باستمرار، قم بتضمين هذا الخط في مهيئ بيانات تتبع الاستخدام.
الخيار 2: تعيين الإصدار في BuildInfo.config
(ASP.NET فقط)
تلتقط وحدة ويب Application Insights الإصدار من العقدة BuildLabel
. قم بتضمين هذا الملف في مشروعك وتذكر تعيين الخاصية Copy Always في مستكشف الحلول.
<?xml version="1.0" encoding="utf-8"?>
<DeploymentEvent xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/DeploymentEvent/2013/06">
<ProjectName>AppVersionExpt</ProjectName>
<Build type="MSBuild">
<MSBuild>
<BuildLabel kind="label">1.0.0.2</BuildLabel>
</MSBuild>
</Build>
</DeploymentEvent>
إنشاء BuildInfo.config
تلقائيا في Microsoft Build Engine. أضف الأسطر التالية إلى الملف:.csproj
<PropertyGroup>
<GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
<IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
</PropertyGroup>
تنشئ هذه الخطوة ملفا يسمى yourProjectName.BuildInfo.config
. تعيد عملية النشر تسميتها إلى BuildInfo.config
.
تحتوي تسمية الإنشاء على عنصر نائب (*AutoGen_...*)
عند الإنشاء باستخدام Visual Studio. عند الإنشاء باستخدام Microsoft Build Engine، يتم ملء العنصر النائب برقم الإصدار الصحيح.
للسماح ل Microsoft Build Engine بإنشاء أرقام الإصدار، قم بتعيين الإصدار كما في 1.0.*
AssemblyReference.cs
.
إصدار التعليقات التوضيحية
إذا كنت تستخدم Azure DevOps، يمكنك إضافة علامة تعليق توضيحي إلى المخططات الخاصة بك كلما قمت بإصدار إصدار جديد.
أتمتة عملية إنشاء الموارد
يمكن أتمتة عملية إنشاء الموارد باستخدام قوالب Bicep أو JSON مع Azure Resource Manager. يمكنك حزم العديد من الموارد معا لإنشائها في عملية نشر واحدة. على سبيل المثال، يمكنك إنشاء مورد Application Insights مع اختبارات التوفر والتنبيهات القياسية وإعداد تشخيص لإرسال بيانات تتبع الاستخدام إلى حساب Azure Storage.
إنشاء قالب في مدخل Microsoft Azure
يمكنك إنشاء قالب من الموارد الموجودة.
Application Insights فقط
- انتقل إلى مورد Application Insights في مدخل Microsoft Azure.
- افتح قالب التصدير المدرج ضمن التنفيذ التلقائي في شريط التنقل الأيسر.
- (اختياري): لاستخدام المعلمات الخاصة بك، قم بإلغاء تحديد تضمين المعلمات.
-
قم بتنزيل ملف القالب أو نشره مباشرة في مدخل Microsoft Azure.
الموارد المتعددة
- انتقل إلى مجموعة الموارد لمورد Application Insights.
- في جزء Overview ، ضع علامة على جميع الموارد التي تريد تضمينها في القالب، ثم حدد Export template في شريط التنقل العلوي.
- (اختياري): لاستخدام المعلمات الخاصة بك، قم بإلغاء تحديد تضمين المعلمات.
-
قم بتنزيل ملف القالب أو نشره مباشرة في مدخل Microsoft Azure.
إنشاء قالب من البداية
لمعرفة كيفية إنشاء قالب ARM من البداية، تفضل بزيارة وثائق قالب ARM التي تتضمن برامج تعليمية لإنشاء قالب وإضافةمواردوإضافة معلمات والمزيد.
يمكن العثور على الخصائص المتوفرة ل Application Insightsواختبارات التوفروالتنبيهات القياسيةوإعدادات التشخيص والموارد الأخرى في الوثائق المرجعية لمورد Azure ضمن عقدة Reference>Monitor>Insights .
الخطوات التالية