Condividi tramite


Eseguire la migrazione del rilevamento intelligente di Application Insights in Monitoraggio di Azure agli avvisi (anteprima)

Questo articolo descrive il processo di migrazione del rilevamento intelligente di Application Insights agli avvisi. La migrazione crea regole di avviso per i diversi moduli di rilevamento intelligente. È possibile gestire e configurare queste regole come qualsiasi altra regola di avviso di Monitoraggio di Azure. È anche possibile configurare gruppi di azioni per queste regole per ottenere più metodi di azioni o notifiche sui nuovi rilevamenti.

Vantaggi della migrazione agli avvisi

Con la migrazione, il rilevamento intelligente consente ora di sfruttare le funzionalità complete degli avvisi di Monitoraggio di Azure, tra cui:

  • Opzioni avanzate di notifica per tutti i rilevatori: usare i gruppi di azioni per configurare più tipi di notifiche e azioni attivati quando viene generato un avviso. È possibile configurare la notifica tramite posta elettronica, SMS, chiamata vocale o notifiche push. È possibile configurare azioni come la chiamata di un webhook sicuro, un'app per la logica e un runbook di automazione. I gruppi di azioni consentono di gestire ulteriormente le azioni su larga scala consentendo di configurare le azioni una sola volta e di usarle tra più regole di avviso.
  • Gestione su larga scala: gli avvisi di rilevamento intelligente usano l'esperienza e l'API degli avvisi di Monitoraggio di Azure.
  • Eliminazione basata su regole delle notifiche: usare le regole di azione per definire o eliminare azioni in qualsiasi ambito di Azure Resource Manager, ad esempio sottoscrizione di Azure, gruppo di risorse o risorsa di destinazione. I filtri consentono di restringere il subset specifico di istanze di avviso su cui si vuole agire.

Funzionalità di rilevamento intelligente migrate

Quando si esegue la migrazione di una risorsa di Application Insights, viene creato un nuovo set di regole di avviso. Viene creata una regola per ognuna delle funzionalità di rilevamento intelligente di cui è stata eseguita la migrazione. La tabella seguente esegue il mapping delle funzionalità di rilevamento intelligente di pre-migrazione alle regole di avviso post-migrazione.

Nome regola di rilevamento intelligente (1) Nome regola di avviso (2)
Riduzione delle prestazioni nel tempo di risposta del server Riduzione della latenza di risposta - <Nome risorsa di Application Insights>
Riduzione delle prestazioni nella durata delle dipendenze Riduzione della latenza delle dipendenze - <Nome risorsa di Application Insights>
Degradazione del rapporto tra i livelli di gravità delle tracce (anteprima) Riduzione della gravità della traccia - <Nome risorsa di Application Insights>
Aumento anomalo nel volume delle eccezioni (anteprima) Anomalie delle eccezioni - <Nome della risorsa di Application Insights>
Potenziale perdita di memoria rilevata (anteprima) Potenziale perdita di memoria - <Nome della risorsa di Application Insights>
Rallentamento del tempo di caricamento delle pagine Non più supportato (3)
Rallentamento del tempo di risposta del server Non più supportato (3)
Dipendenze con durata lunga Non più supportato (3)
Potenziale problema di sicurezza rilevato (anteprima) Non più supportato (3)
Aumento anomalo del volume di dati giornaliero (anteprima) Non più supportato (3)

(1) Nome della regola così come viene visualizzato nel riquadro Impostazioni rilevamento intelligente.
(2) Nome della nuova regola di avviso dopo la migrazione.
(3) Queste funzionalità di rilevamento intelligente non vengono convertite in avvisi a causa di un utilizzo ridotto e di rivalutazione dell'efficacia del rilevamento. Questi rilevatori non saranno più supportati per questa risorsa al termine della migrazione.

Nota

Il rilevatore intelligente Anomalie errori è già stato creato come regola di avviso e non richiede la migrazione. Non viene illustrato in questo articolo.

La migrazione non modifica la progettazione e il comportamento algoritmici del rilevamento intelligente. Le stesse prestazioni di rilevamento sono previste prima e dopo la modifica.

È necessario applicare la migrazione a ogni risorsa di Application Insights separatamente. Per le risorse non migrate in modo esplicito, il rilevamento intelligente continuerà a funzionare come in precedenza.

Configurazione del gruppo di azioni per le nuove regole di avviso di rilevamento intelligente

Come parte della migrazione, ogni nuova regola di avviso viene configurata automaticamente con un gruppo di azioni. La migrazione può assegnare un gruppo di azioni predefinito per ogni regola. Il gruppo di azioni predefinito è configurato in base alla notifica della regola prima della migrazione:

  • Se la regola di rilevamento intelligente ha configurato il messaggio di posta elettronica predefinito o nessuna notifica, la nuova regola di avviso viene configurata con un gruppo di azioni denominato Rilevamento intelligente di Application Insights.

    • Se lo strumento di migrazione trova un gruppo di azioni esistente con tale nome, collega la nuova regola di avviso a tale gruppo di azioni.
    • In caso contrario, crea un nuovo gruppo di azioni con tale nome. Il nuovo gruppo è configurato per le azioni del ruolo di Azure Resource Manager tramite posta elettronica e invia notifiche agli utenti collaboratore e lettore di monitoraggio di Azure Resource Manager.
  • Se la notifica di posta elettronica predefinita è stata modificata prima della migrazione, viene creato un gruppo di azioni denominato Rilevamento <intelligente di Application Insights n> , con un'azione di posta elettronica che invia notifiche agli indirizzi di posta elettronica configurati in precedenza.

Anziché usare il gruppo di azioni predefinito, selezionare un gruppo di azioni esistente che verrà configurato per tutte le nuove regole di avviso.

Eseguire il processo di migrazione del rilevamento intelligente

Usare il portale di Azure, l'interfaccia della riga di comando di Azure o i modelli di Azure Resource Manager (modelli arm) per eseguire la migrazione.

Eseguire la migrazione del rilevamento intelligente usando il portale di Azure

Per eseguire la migrazione del rilevamento intelligente nella risorsa:

  1. Selezionare Rilevamento intelligente nell'intestazione Analisi nella risorsa di Application Insights.

  2. Selezionare il banner che legge Eseguire la migrazione del rilevamento intelligente agli avvisi (anteprima).Select the banner reading Migrate smart detection to alerts (Preview). Verrà visualizzata la finestra di dialogo di migrazione.

    Screenshot that shows the Smart Detection feed banner.

  3. Selezionare l'opzione Esegui la migrazione di tutte le risorse di Application Insights in questa sottoscrizione . In alternativa, è possibile lasciare deselezionata l'opzione se si vuole eseguire la migrazione solo della risorsa corrente in uso.

    Nota

    La selezione di questa opzione influisce su tutte le risorse di Application Insights esistenti non ancora migrate. Finché la migrazione agli avvisi è in anteprima, le nuove risorse di Application Insights verranno comunque create con il rilevamento intelligente non degli avvisi.

  4. Selezionare un gruppo di azioni da configurare per le nuove regole di avviso. È possibile usare il gruppo di azioni predefinito come illustrato o usare uno dei gruppi di azioni esistenti.

  5. Selezionare Esegui migrazione per avviare il processo di migrazione.

    Screenshot that shows the Smart Detection migration dialog.

Dopo la migrazione, vengono create nuove regole di avviso per la risorsa di Application Insight, come illustrato.

Eseguire la migrazione del rilevamento intelligente usando l'interfaccia della riga di comando di Azure

Avviare la migrazione del rilevamento intelligente usando il comando dell'interfaccia della riga di comando di Azure seguente. Il comando attiva il processo di migrazione preconfigurato come descritto in precedenza.

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

Per eseguire la migrazione di una singola risorsa di Application Insights, body.txt deve includere:

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

Per eseguire la migrazione di tutte le risorse di Application Insights in una sottoscrizione, body.txt deve includere:

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

Il ActionGroupCreationPolicy parametro seleziona i criteri per la migrazione delle impostazioni di posta elettronica nelle regole di rilevamento intelligente nei gruppi di azioni. I valori consentiti sono i seguenti:

  • Auto: usa i gruppi di azioni predefiniti, come descritto in questo documento.
  • Personalizzato: crea tutte le regole di avviso con il gruppo di azioni specificato in customActionGroupName.
  • <blank>: se ActionGroupCreationPolicy non viene specificato, viene usato il Auto criterio.

Eseguire la migrazione del rilevamento intelligente usando i modelli di Resource Manager

È possibile attivare la migrazione del rilevamento intelligente agli avvisi per una risorsa specifica di Application Insights usando i modelli di Resource Manager. Per usare questo metodo, è necessario:

  • Creare una regola di avviso di rilevamento intelligente per ognuno dei rilevatori supportati.
  • Modificare le proprietà di Application Insight per indicare che la migrazione è stata completata.

Con questo metodo è possibile controllare quali regole di avviso creare, definire il nome e la descrizione della regola di avviso e selezionare qualsiasi gruppo di azioni desiderato per ogni regola.

A questo scopo, usare i modelli seguenti. Modificarli in base alle esigenze per specificare l'ID sottoscrizione e il nome della risorsa di Application Insights.

{
    "$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'))]"
			]
		}
	]
}

Visualizzare gli avvisi dopo la migrazione

Dopo la migrazione, è possibile visualizzare gli avvisi di rilevamento intelligente selezionando la voce Avvisi nella risorsa di Application Insights. Per Tipo di segnale selezionare Rilevamento intelligente per filtrare e presentare solo avvisi di rilevamento intelligente. È possibile selezionare un avviso per visualizzarne i dettagli di rilevamento.

Screenshot that shows smart detection alerts.

È anche possibile visualizzare i rilevamenti disponibili nel feed Rilevamento intelligente della risorsa di Application Insights.

Screenshot that shows the Smart Detection feed.

Gestire le impostazioni delle regole di avviso di rilevamento intelligente dopo la migrazione

Usare i modelli portale di Azure o ARM per gestire le impostazioni delle regole di avviso di rilevamento intelligente dopo la migrazione.

Gestire le impostazioni delle regole di avviso usando il portale di Azure

Al termine della migrazione, è possibile accedere alle nuove regole di avviso di rilevamento intelligente in modo analogo ad altre regole di avviso definite per la risorsa.

  1. Selezionare Avvisi nell'intestazione Monitoraggio nella risorsa di Application Insights.

    Screenshot that shows the Alerts menu.

  2. Selezionare Gestisci regole di avviso.

    Screenshot that shows Manage alert rules.

  3. Per Tipo di segnale selezionare Rilevamento intelligente per filtrare e presentare le regole di avviso di rilevamento intelligente.

    Screenshot that shows smart detection rules.

Abilitare o disabilitare le regole di avviso di rilevamento intelligente

Le regole di avviso di rilevamento intelligente possono essere abilitate o disabilitate tramite l'interfaccia utente del portale o a livello di codice, come qualsiasi altra regola di avviso.

Se una regola di rilevamento intelligente specifica è stata disabilitata prima della migrazione, verrà disabilitata anche la nuova regola di avviso.

Configurare i gruppi di azioni per le regole di avviso

È possibile creare e gestire gruppi di azioni per le nuove regole di avviso di rilevamento intelligente, ad esempio per qualsiasi altra regola di avviso di Monitoraggio di Azure.

Gestire le impostazioni delle regole di avviso usando i modelli di Resource Manager

Al termine della migrazione, è possibile usare i modelli di Resource Manager per configurare le impostazioni per le impostazioni delle regole di avviso di rilevamento intelligente.

Nota

Al termine della migrazione, è necessario configurare le impostazioni di rilevamento intelligente usando i modelli di regole di avviso di rilevamento intelligente. Non possono più essere configurati usando il modello di Resource Manager di Application Insights.

Questo esempio di modello di Resource Manager illustra come configurare una Response Latency Degradation regola di avviso in Enabled uno stato con una gravità pari 2a .

  • Il rilevamento intelligente è un servizio globale, quindi la posizione della global regola viene creata nella posizione.

  • La id proprietà deve cambiare in base al rilevatore specifico configurato. Il valore deve essere uno dei seguenti:

    • 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"]
                  }
            }
        }
    ]
}

Passaggi successivi