Bagikan melalui


Memigrasikan deteksi pintar Azure Monitor Application Insights ke pemberitahuan (pratinjau)

Artikel ini menjelaskan proses migrasi deteksi pintar Application Insights ke pemberitahuan. Migrasi membuat aturan peringatan untuk berbagai modul deteksi cerdas. Anda dapat mengelola dan mengonfigurasi aturan ini seperti aturan pemberitahuan Azure Monitor lainnya. Anda juga dapat mengonfigurasi grup tindakan untuk aturan ini untuk mendapatkan beberapa metode tindakan atau pemberitahuan pada deteksi baru.

Manfaat migrasi ke pemberitahuan

Dengan migrasi, deteksi pintar sekarang memungkinkan Anda untuk memanfaatkan kemampuan penuh pemberitahuan Azure Monitor, termasuk:

  • Opsi pemberitahuan kaya untuk semua detektor: Gunakan grup tindakan untuk mengonfigurasi beberapa jenis pemberitahuan dan tindakan yang dipicu saat pemberitahuan diaktifkan. Anda dapat mengonfigurasi pemberitahuan melalui email, SMS, panggilan suara, atau pemberitahuan push. Anda dapat mengonfigurasi tindakan seperti memanggil webhook, aplikasi logika, dan runbook otomatisasi yang aman. Tindakan mengelompokkan manajemen lebih lanjut dalam skala besar dengan memungkinkan Anda mengonfigurasi tindakan sekali dan menggunakannya di beberapa aturan pemberitahuan.
  • Manajemen dalam skala besar: Pemberitahuan deteksi cerdas menggunakan pengalaman pemberitahuan Azure Monitor dan API.
  • Penekanan pemberitahuan berbasis aturan: Gunakan aturan tindakan untuk menentukan atau menekan tindakan di cakupan Azure Resource Manager apa pun seperti langganan Azure, grup sumber daya, atau sumber daya target. Filter membantu Anda mempersempit subset instans pemberitahuan tertentu yang ingin Anda tindak lanjuti.

Kemampuan deteksi pintar yang dimigrasikan

Sekumpulan aturan pemberitahuan baru dibuat saat Anda memigrasikan sumber daya Application Insights. Satu aturan dibuat untuk setiap kemampuan deteksi pintar yang dimigrasikan. Tabel berikut memetakan kemampuan deteksi pintar pramigrasi ke aturan pemberitahuan pascamigrasi.

Nama aturan deteksi pintar (1) Nama aturan pemberitahuan (2)
Degradasi dalam waktu respons server Degradasi latensi respons - <Nama sumber daya Application Insights>
Penurunan dalam durasi dependensi Degradasi latensi dependensi - <Nama sumber daya Application Insights>
Degradasi rasio tingkat keparahan jejak (pratinjau) Melacak degradasi keparahan - <Nama sumber daya Application Insights>
Kenaikan abnormal dalam volume pengecualian (pratinjau) Anomali pengecualian - <Nama sumber daya Application Insights>
Potensi kebocoran memori terdeteksi (pratinjau) Potensi kebocoran memori - <Nama sumber daya Application Insights>
Waktu pemuatan halaman lambat Tidak lagi didukung (3)
Waktu respons server lambat Tidak lagi didukung (3)
Durasi ketergantungan yang panjang Tidak lagi didukung (3)
Potensi masalah keamanan terdeteksi (pratinjau) Tidak lagi didukung (3)
Kenaikan abnormal volume data harian (pratinjau) Tidak lagi didukung (3)

(1) Nama aturan seperti yang muncul di panel Pengaturan deteksi pintar.
(2) Nama aturan pemberitahuan baru setelah migrasi.
(3) Kemampuan deteksi pintar ini tidak dikonversi ke pemberitahuan karena penggunaan yang rendah dan penilaian ulang efektivitas deteksi. Detektor ini tidak akan lagi didukung untuk sumber daya ini setelah migrasinya selesai.

Catatan

Detektor pintar Anomali Kegagalan sudah dibuat sebagai aturan pemberitahuan dan tidak memerlukan migrasi. Ini tidak dibahas dalam artikel ini.

Migrasi tidak mengubah desain algoritmik dan perilaku deteksi pintar. Kinerja deteksi yang sama diharapkan sebelum dan sesudah perubahan.

Anda perlu menerapkan migrasi ke setiap sumber daya Application Insights secara terpisah. Untuk sumber daya yang tidak dimigrasikan secara eksplisit, deteksi pintar akan terus berfungsi seperti sebelumnya.

Konfigurasi grup tindakan untuk aturan pemberitahuan deteksi pintar baru

Sebagai bagian dari migrasi, setiap aturan pemberitahuan baru dikonfigurasi secara otomatis dengan grup tindakan. Migrasi dapat menetapkan grup tindakan default untuk setiap aturan. Grup tindakan default dikonfigurasi sesuai dengan pemberitahuan aturan sebelum migrasi:

  • Jika aturan deteksi pintar memiliki email default atau tidak ada pemberitahuan yang dikonfigurasi, aturan pemberitahuan baru dikonfigurasi dengan grup tindakan bernama Deteksi Cerdas Application Insights.

    • Jika alat migrasi menemukan grup tindakan yang ada dengan nama tersebut, alat ini akan menautkan aturan pemberitahuan baru ke grup tindakan tersebut.
    • Jika tidak, itu membuat grup tindakan baru dengan nama itu. Grup baru dikonfigurasi untuk tindakan Peran Azure Resource Manager Email dan mengirim pemberitahuan ke pengguna Kontributor Pemantauan dan Pembaca Pemantauan Azure Resource Manager Anda.
  • Jika pemberitahuan email default diubah sebelum migrasi, grup tindakan yang disebut Application Insights Smart Detection <n> dibuat, dengan tindakan email mengirim pemberitahuan ke alamat email yang dikonfigurasi sebelumnya.

Alih-alih menggunakan grup tindakan default, Anda memilih grup tindakan yang sudah ada yang akan dikonfigurasi untuk semua aturan pemberitahuan baru.

Jalankan proses migrasi deteksi pintar

Gunakan templat portal Azure, Azure CLI, atau Azure Resource Manager (templat ARM) untuk melakukan migrasi.

Memigrasikan deteksi pintar Anda dengan menggunakan portal Azure

Untuk memigrasikan deteksi pintar di sumber daya Anda:

  1. Pilih Deteksi cerdas di bawah judul Selidiki di sumber daya Application Insights Anda.

  2. Pilih pembacaan spanduk Memigrasikan deteksi pintar ke pemberitahuan (Pratinjau). Dialog migrasi muncul.

    Screenshot that shows the Smart Detection feed banner.

  3. Pilih opsi Migrasikan semua sumber daya Application Insights dalam langganan ini. Atau Anda dapat membiarkan opsi dibersihkan jika Anda hanya ingin memigrasikan sumber daya saat ini yang Anda gunakan.

    Catatan

    Memilih opsi ini memengaruhi semua sumber daya Application Insights yang sudah ada yang belum dimigrasikan. Selama migrasi yang diaktifkan peringatannya sedang dalam pratinjau, sumber daya Application Insights baru masih akan dibuat dengan deteksi pintar non-peringatan.

  4. Pilih grup tindakan yang akan dikonfigurasi untuk aturan pemberitahuan baru. Anda dapat menggunakan grup tindakan default seperti yang dijelaskan atau menggunakan salah satu grup tindakan yang sudah ada.

  5. Pilih Migrasi untuk memulai proses migrasi.

    Screenshot that shows the Smart Detection migration dialog.

Setelah migrasi, aturan pemberitahuan baru dibuat untuk sumber daya Application Insight Anda, seperti yang dijelaskan.

Memigrasikan deteksi pintar Anda dengan menggunakan Azure CLI

Mulai migrasi deteksi pintar dengan menggunakan perintah Azure CLI berikut. Perintah memicu proses migrasi yang telah dikonfigurasi sebelumnya seperti yang dijelaskan sebelumnya.

az rest --method POST --uri /subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/migrateFromSmartDetection?api-version=2021-01-01-preview --body @body.txt

Untuk memigrasikan satu sumber daya Application Insights, body.txt harus mencakup:

{
      "scope": [
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}"
      ],
      "actionGroupCreationPolicy" : "{Auto/Custom}",
      "customActionGroupName" : "{actionGroupName}"           
}

Untuk memigrasikan semua sumber daya Application Insights dalam langganan, body.txt harus mencakup:

{
      "scope": [
	"/subscriptions/{subscriptionId} "
      ],
      "actionGroupCreationPolicy" : "{Auto/Custom}",
      "customActionGroupName" : "{actionGroupName}"           
}

Parameter ActionGroupCreationPolicy memilih kebijakan untuk memigrasikan pengaturan email dalam aturan deteksi pintar ke dalam grup tindakan. Nilai yang diperbolehkan adalah:

  • Otomatis: Menggunakan grup tindakan default seperti yang dijelaskan dalam dokumen ini.
  • Kustom: Membuat semua aturan pemberitahuan dengan grup tindakan yang ditentukan dalam customActionGroupName.
  • <kosong>: Jika ActionGroupCreationPolicy tidak ditentukan, Auto kebijakan akan digunakan.

Memigrasikan deteksi pintar Anda dengan menggunakan templat ARM

Anda dapat memicu migrasi deteksi pintar ke pemberitahuan untuk sumber daya Application Insights tertentu dengan menggunakan templat ARM. Untuk menggunakan metode ini, Anda perlu:

  • Buat aturan pemberitahuan deteksi pintar untuk setiap detektor yang didukung.
  • Ubah properti Application Insight untuk menunjukkan bahwa migrasi telah selesai.

Dengan metode ini, Anda dapat mengontrol aturan pemberitahuan mana yang akan dibuat, menentukan nama dan deskripsi aturan pemberitahuan Anda sendiri, dan memilih grup tindakan apa pun yang Anda inginkan untuk setiap aturan.

Gunakan templat berikut untuk tujuan ini. Edit sesuai kebutuhan untuk memberikan ID langganan dan nama sumber daya Application Insights Anda.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
	"parameters": {
		"applicationInsightsResourceName": {
			"type": "string"
		},
		"actionGroupName": {
			"type": "string",
			"defaultValue": "Application Insights Smart Detection"
		},
		"actionGroupResourceGroup": {
			"type": "string",
			"defaultValue": "[resourceGroup().Name]"
		}
	},
	"variables": {
		"applicationInsightsResourceId": "[concat('/subscriptions/',subscription().subscriptionId,'/resourceGroups/',resourceGroup().Name,'/providers/microsoft.insights/components/',parameters('applicationInsightsResourceName'))]",
		"actionGroupId": "[concat('/subscriptions/',subscription().subscriptionId,'/resourceGroups/',parameters('actionGroupResourceGroup'),'/providers/microsoft.insights/ActionGroups/',parameters('actionGroupName'))]",
		"requestPerformanceDegradationDetectorRuleName": "[concat('Response Latency Degradation - ', parameters('applicationInsightsResourceName'))]",
		"dependencyPerformanceDegradationDetectorRuleName": "[concat('Dependency Latency Degradation - ', parameters('applicationInsightsResourceName'))]",
		"traceSeverityDetectorRuleName": "[concat('Trace Severity Degradation - ', parameters('applicationInsightsResourceName'))]",
		"exceptionVolumeChangedDetectorRuleName": "[concat('Exception Anomalies - ', parameters('applicationInsightsResourceName'))]",
		"memoryLeakRuleName": "[concat('Potential Memory Leak - ', parameters('applicationInsightsResourceName'))]"
	},
	"resources": [
		{
			"name": "[variables('requestPerformanceDegradationDetectorRuleName')]",
			"type": "Microsoft.AlertsManagement/smartdetectoralertrules",
			"location": "global",
			"apiVersion": "2019-03-01",
			"properties": {
				"description": "Response Latency Degradation notifies you of an unusual increase in latency in your app response to requests.",
				"state": "Enabled",
				"severity": "Sev3",
				"frequency": "PT24H",
				"detector": {
					"id": "RequestPerformanceDegradationDetector"
				},
				"scope": [
					"[variables('applicationInsightsResourceId')]"
				],
				"actionGroups": {	
					"groupIds": [
						"[variables('actionGroupId')]"
					]
				}
			}
		},
		{
			"name": "[variables('dependencyPerformanceDegradationDetectorRuleName')]",
			"type": "Microsoft.AlertsManagement/smartdetectoralertrules",
			"location": "global",
			"apiVersion": "2019-03-01",
			"properties": {
				"description": "Dependency Latency Degradation notifies you of an unusual increase in response by a dependency your app is calling (e.g. REST API or database)",
				"state": "Enabled",
				"severity": "Sev3",
				"frequency": "PT24H",
				"detector": {
					"id": "DependencyPerformanceDegradationDetector"
				},
				"scope": [
					"[variables('applicationInsightsResourceId')]"
				],
				"actionGroups": {
					"groupIds": [
						"[variables('actionGroupId')]"
					]
				}
			}
		},
		{
			"name": "[variables('traceSeverityDetectorRuleName')]",
			"type": "Microsoft.AlertsManagement/smartdetectoralertrules",
			"location": "global",
			"apiVersion": "2019-03-01",
			"properties": {
				"description": "Trace Severity Degradation notifies you of an unusual increase in the severity of the traces generated by your app.",
				"state": "Enabled",
				"severity": "Sev3",
				"frequency": "PT24H",
				"detector": {
					"id": "TraceSeverityDetector"
				},
				"scope": [
					"[variables('applicationInsightsResourceId')]"
				],
				"actionGroups": {
					"groupIds": [
						"[variables('actionGroupId')]"
					]
				}
			}
		},
		{
			"name": "[variables('exceptionVolumeChangedDetectorRuleName')]",
			"type": "Microsoft.AlertsManagement/smartdetectoralertrules",
			"location": "global",
			"apiVersion": "2019-03-01",
			"properties": {
				"description": "Exception Anomalies notifies you of an unusual rise in the rate of exceptions thrown by your app.",
				"state": "Enabled",
				"severity": "Sev3",
				"frequency": "PT24H",
				"detector": {
					"id": "ExceptionVolumeChangedDetector"
				},
				"scope": [
					"[variables('applicationInsightsResourceId')]"
				],
				"actionGroups": {
					"groupIds": [
						"[variables('actionGroupId')]"
					]
				}
			}
		},
		{
			"name": "[variables('memoryLeakRuleName')]",
			"type": "Microsoft.AlertsManagement/smartdetectoralertrules",
			"location": "global",
			"apiVersion": "2019-03-01",
			"properties": {
				"description": "Potential Memory Leak notifies you of increased memory consumption pattern by your app which may indicate a potential memory leak.",
				"state": "Enabled",
				"severity": "Sev3",
				"frequency": "PT24H",
				"detector": {
					"id": "MemoryLeakDetector"
				},
				"scope": [
					"[variables('applicationInsightsResourceId')]"
				],
				"actionGroups": {
					"groupIds": [
						"[variables('actionGroupId')]"
					]
				}
			}
		},
		{
			"name": "[concat(parameters('applicationInsightsResourceName'),'/migrationToAlertRulesCompleted')]",
			"type": "Microsoft.Insights/components/ProactiveDetectionConfigs",
			"location": "[resourceGroup().location]",
			"apiVersion": "2018-05-01-preview",
			"properties": {
				"name": "migrationToAlertRulesCompleted",
				"sendEmailsToSubscriptionOwners": false,
				"customEmails": [],
				"enabled": true
			},
			"dependsOn": [
				"[resourceId('Microsoft.AlertsManagement/smartdetectoralertrules', variables('requestPerformanceDegradationDetectorRuleName'))]",
				"[resourceId('Microsoft.AlertsManagement/smartdetectoralertrules', variables('dependencyPerformanceDegradationDetectorRuleName'))]",
				"[resourceId('Microsoft.AlertsManagement/smartdetectoralertrules', variables('traceSeverityDetectorRuleName'))]",
				"[resourceId('Microsoft.AlertsManagement/smartdetectoralertrules', variables('exceptionVolumeChangedDetectorRuleName'))]",
				"[resourceId('Microsoft.AlertsManagement/smartdetectoralertrules', variables('memoryLeakRuleName'))]"
			]
		}
	]
}

Menampilkan pemberitahuan Anda setelah migrasi

Setelah migrasi, Anda dapat melihat pemberitahuan deteksi pintar dengan memilih entri Pemberitahuan di sumber daya Application Insights Anda. Untuk Jenis sinyal, pilih Detektor Pintar untuk memfilter dan hanya menyajikan pemberitahuan deteksi pintar. Anda dapat memilih pemberitahuan untuk melihat detail deteksinya.

Screenshot that shows smart detection alerts.

Anda juga masih dapat melihat deteksi yang tersedia di umpan Deteksi Cerdas sumber daya Application Insights Anda.

Screenshot that shows the Smart Detection feed.

Mengelola pengaturan aturan pemberitahuan deteksi pintar setelah migrasi

Gunakan templat portal Azure atau ARM untuk mengelola pengaturan aturan pemberitahuan deteksi pintar setelah migrasi.

Mengelola pengaturan aturan pemberitahuan dengan menggunakan portal Azure

Setelah migrasi selesai, Anda mengakses aturan pemberitahuan deteksi pintar baru dengan cara yang sama dengan aturan pemberitahuan lain yang ditentukan untuk sumber daya.

  1. Pilih Pemberitahuan di bawah judul Pemantauan di sumber daya Application Insights Anda.

    Screenshot that shows the Alerts menu.

  2. Pilih Kelola aturan pemberitahuan.

    Screenshot that shows Manage alert rules.

  3. Untuk Jenis sinyal, pilih Detektor Pintar untuk memfilter dan menyajikan aturan pemberitahuan deteksi pintar.

    Screenshot that shows smart detection rules.

Mengaktifkan atau menonaktifkan aturan pemberitahuan deteksi pintar

Aturan pemberitahuan deteksi pintar dapat diaktifkan atau dinonaktifkan melalui UI portal atau secara terprogram, seperti aturan pemberitahuan lainnya.

Jika aturan deteksi pintar tertentu dinonaktifkan sebelum migrasi, aturan pemberitahuan baru juga akan dinonaktifkan.

Mengonfigurasi grup tindakan untuk aturan pemberitahuan Anda

Anda dapat membuat dan mengelola grup tindakan untuk aturan pemberitahuan deteksi pintar baru seperti untuk aturan pemberitahuan Azure Monitor lainnya.

Mengelola pengaturan aturan pemberitahuan dengan menggunakan templat ARM

Setelah migrasi selesai, Anda dapat menggunakan templat ARM untuk mengonfigurasi pengaturan untuk pengaturan aturan pemberitahuan deteksi pintar.

Catatan

Setelah migrasi selesai, pengaturan deteksi pintar harus dikonfigurasi dengan menggunakan templat aturan pemberitahuan deteksi pintar. Mereka tidak dapat lagi dikonfigurasi dengan menggunakan templat Application Insights Resource Manager.

Contoh templat ARM ini menunjukkan cara mengonfigurasi Response Latency Degradation aturan pemberitahuan dalam status Enabled dengan tingkat keparahan 2.

  • Deteksi cerdas adalah layanan global, sehingga lokasi aturan dibuat di lokasi.global

  • Properti id harus berubah sesuai dengan detektor tertentu yang dikonfigurasi. Nilainya harus salah satu dari:

    • FailureAnomaliesDetector
    • RequestPerformanceDegradationDetector
    • DependencyPerformanceDegradationDetector
    • ExceptionVolumeChangedDetector
    • TraceSeverityDetector
    • MemoryLeakDetector
{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "resources": [
        {
            "type": "microsoft.alertsmanagement/smartdetectoralertrules",
            "apiVersion": "2019-03-01",
            "name": "Response Latency Degradation - my-app",
            "location": "global", 
            "properties": {
                  "description": "Response Latency Degradation notifies you of an unusual increase in latency in your app response to requests.",
                  "state": "Enabled",
                  "severity": "2",
                  "frequency": "PT24H",
                  "detector": {
                  "id": "RequestPerformanceDegradationDetector"
                  },
                  "scope": ["/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/microsoft.insights/components/my-app"],
                  "actionGroups": {
                        "groupIds": ["/subscriptions/00000000-1111-2222-3333-444444444444/resourcegroups/MyResourceGroup/providers/microsoft.insights/actiongroups/MyActionGroup"]
                  }
            }
        }
    ]
}

Langkah berikutnya