Nei precedenti script e in particolare il #250 abbiamo visto come sfruttare Azure Arc per monitorare gli indicatori dei server sui quali abbiamo installato l'agent. Questa funzionalità è sicuramente comoda per avere uno sguardo direttamente dal portale, ma il fine ultimo dell'estensione installata è quello di poter monitorare tramite Azure Monitor le metriche registrate e ricevere avvisi.
Per esempio, come vedremo in questo script, potremmo ricevere un e-mail qualora lo spazio disponibile sul disco scenda sotto una soglia critica. Per usufruire di questa funzionalità rechiamoci presso un server Arc che abbiamo configurato e apriamo la sezione Logs. La tabella InsightMetrics contiene tutte le metriche della quale abbiamo bisogno, suddivise per Computer e Name. Per identificare lo spazio libero, possiamo usare la metrica di nome FreeSpacePercentage, scrivere e provare una query come la seguente.
InsightsMetrics | where Namespace == "LogicalDisk" and Name == "FreeSpacePercentage" | summarize AggregatedValue = avg(Val) by bin(TimeGenerated, 15m), Computer
Essa estrae la media degli ultimi 15 min per ogni computer dello spazio libero in percentuale.

A questo punto premiamo il pulsante New alert rule per procedere a creare una regola di alert sulla base della query. Fondamentale nella schermata proposta, indicare di voler valutare la media del campo AggregatedValue secondo la granularità desiderata. Se vogliamo, poi, allarghiamo lo scopo dal singolo server all'intero gruppo di risorse, in modo da poter usufruire della regola per tutti i server.

Abilitiamo inoltre anche la dimensione per Computer, in questo modo riceveremo avvisi separati a seconda del server. Scegliamo poi le altre regole tipiche di Azure Monitor, tra le quali le azioni da intraprendere: inviare e-mail, messaggi, effettuare chiamate HTTP o a funzioni.
Terminata la procedura la regola è pronta e verrà applicata a tutti i server indicati. Chiaramente si possono creare altre regole, per esempio per monitorare la RAM occupata. In questa pagina https://learn.microsoft.com/en-us/azure/azure-monitor/vm/monitor-virtual-machine-alerts possiamo trovare una lista delle metriche più interessanti con relativa query.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare form tipizzati con Angular
Effettuare l'upload di un file via FTP con la libreria FluentFTP di .NET
Leggere la configurazione da Azure KeyVault con logica di retry in ASP.NET Core
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare database e servizi con gli add-on di Container App
Utilizzare flat e flatMap per appiattire array innestati in array
Sfruttare il portale Azure per creare script di automazione
Migliorare la scalabilità di ASP.NET Core 7 grazie all'output cache
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Gestire tipi complessi in query string grazie a IParsable in ASP.NET Core 7.0
Usare il versioning con i controller di ASP.NET Core Web API
Gestire server e pc on premise con Azure Arc
I più letti di oggi
- .NET Conference Italia 2023 - Milano e Online
- Utilizzare database e servizi con gli add-on di Container App
- Evitare la script injection nelle GitHub Actions
- Reactive form tipizzati con modellazione del FormBuilder in Angular
- Eseguire attività basate su eventi con Azure Container Jobs
- Utilizzare le collection expression in C#
- Registrare servizi multipli tramite chiavi in ASP.NET Core 8
- Eseguire query verso tipi non mappati in Entity Framework Core
- Reactive form tipizzati con FormBuilder in Angular
- Eseguire attività pianificate con Azure Container Jobs