Usare le azioni di scalabilità automatica per inviare notifiche di avviso di webhook e posta elettronica in Monitoraggio di Azure
Questo articolo illustra come configurare i trigger per poter chiamare URL Web specifici o inviare messaggi di posta elettronica in base alle azioni di scalabilità automatica in Azure.
Webhooks
I webhook consentono di inviare richieste HTTP a un endpoint dell'URL specifico (URL di callback) quando si verifica un determinato evento o un trigger. Usando i webhook, è possibile automatizzare e semplificare i processi abilitando lo scambio automatico di informazioni tra diversi sistemi o applicazioni. Usare i webhook per attivare codice personalizzato, notifiche o altre azioni da eseguire quando si verifica un evento di scalabilità automatica.
È possibile inviare un messaggio di posta elettronica a qualsiasi indirizzo e-mail valido quando si verifica un evento di scalabilità automatica.
Nota
A partire dal 3 aprile 2024 non sarà possibile aggiungere nuovi co-amministratori per le notifiche di scalabilità automatica di Azure. Gli amministratori classici di Azure verranno ritirati il 31 agosto 2024 e dopo questa data non sarà possibile inviare le notifiche di scalabilità automatica di Azure usando amministratori e co-amministratori. Per altre informazioni, vedere Preparare il ritiro dei co-amministratori
Configurare le notifiche
Usare il portale di Azure, l'interfaccia della riga di comando, PowerShell o i modelli di Resource Manager per configurare le notifiche.
Configurare le notifiche usando il portale di Azure.
Selezionare la scheda Notifica nella pagina delle impostazioni di scalabilità automatica per configurare le notifiche.
Immettere un elenco di indirizzi di posta elettronica a cui inviare notifiche.
Immettere un URI webhook per inviare una notifica a un servizio Web. È anche possibile aggiungere intestazioni personalizzate alla richiesta webhook. Ad esempio, è possibile aggiungere un token di autenticazione nell'intestazione, i parametri di query o aggiungere un'intestazione personalizzata per identificare l'origine della richiesta.
Autenticazione nei webhook
È possibile autenticare il webhook usando l'autenticazione basata su token, che prevede il salvataggio dell'URI del webhook con un ID token come parametro di query. Ad esempio: https://mysamplealert/webcallback?tokenid=123-abc456-7890&myparameter2=value123
.
schema di payload del webhook di notifica di scalabilità automatica
Quando viene generata la notifica di scalabilità automatica, nel payload del webhook vengono inclusi i metadati seguenti:
{
"version": "1.0",
"status": "Activated",
"operation": "Scale Out",
"context": {
"timestamp": "2023-06-22T07:01:47.8926726Z",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/microsoft.insights/autoscalesettings/AutoscaleSettings-002",
"name": "AutoscaleSettings-002",
"details": "Autoscale successfully started scale operation for resource 'ScaleableAppServicePlan' from capacity '1' to capacity '2'",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"resourceGroupName": "rg-001",
"resourceName": "ScaleableAppServicePlan",
"resourceType": "microsoft.web/serverfarms",
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.Web/serverfarms/ScaleableAppServicePlan",
"portalLink": "https://portal.azure.com/#resource/subscriptions/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0/resourceGroups/rg-001/providers/Microsoft.Web/serverfarms/ScaleableAppServicePlan",
"resourceRegion": "West Central US",
"oldCapacity": "1",
"newCapacity": "2"
},
"properties": {
"key1": "value1",
"key2": "value2"
}
}
Campo | Obbligatorio | Descrizione |
---|---|---|
stato | Sì | Stato che indica che è stata generata un'azione di scalabilità automatica. |
operation (operazione) | Sì | Per l'aumento delle istanze, è "Scale Out". Per la diminuzione delle istanze, è "Scale In". |
context | Sì | Contesto dell'azione di scalabilità automatica. |
timestamp | Sì | Timestamp in cui è stata attivata l'azione di scalabilità automatica. |
id | Sì | ID di Resource Manager dell'impostazione di scalabilità automatica. |
name | Sì | Nome dell'impostazione di scalabilità automatica. |
dettagli | Sì | Spiegazione dell'azione eseguita dal servizio di scalabilità automatica e della modifica del numero di istanze. |
subscriptionId | Sì | ID sottoscrizione della risorsa di destinazione in fase di ridimensionamento. |
resourceGroupName | Sì | Nome del gruppo di risorse della risorsa di destinazione in fase di ridimensionamento. |
resourceName | Sì | Nome della risorsa di destinazione in fase di ridimensionamento. |
resourceType | Sì | Tre valori supportati: "microsoft.classiccompute/domainnames/slots/roles" - Ruoli di Servizi cloud di Azure, "microsoft.compute/virtualmachinescalesets" - Set di scalabilità di macchine virtuali di Microsoft Azure e "Microsoft.Web/serverfarms" - Funzionalità app Web di Monitoraggio di Azure. |
resourceId | Sì | ID di Resource Manager della risorsa di destinazione in fase di ridimensionamento. |
portalLink | Sì | Collegamento del portale di Azure alla pagina di riepilogo della risorsa di destinazione. |
oldCapacity | Sì | Numero di istanze corrente (precedente) quando la scalabilità automatica ha eseguito un'azione di scalabilità. |
newCapacity | Sì | Nuovo numero di istanze in base al quale la scalabilità automatica ha ridimensionato la risorsa. |
proprietà | No | (Facoltativo). Set di coppie <Chiave, Valore> (ad esempio Dizionario <Stringa, Stringa>). Il campo properties è facoltativo. In un flusso di lavoro basato su un'interfaccia utente personalizzata o un'app per la logica, è possibile immettere chiavi e valori che possono essere passati usando il payload. Un metodo alternativo per passare le proprietà personalizzate alla chiamata al webhook in uscita è di usare l'URI del webhook stesso (sotto forma di parametri di query). |