Le Azure Function pongono al centro il nostro codice scaricandoci dalla responsabilità di gestire l'hosting e la scalabilità del nostro codice. Tra le tante caratteristiche che abbiamo a disposizione vi è anche la possibilità di agganciare Application Insights (AI) e monitorare le nostre funzioni. Indipendentemente dal linguaggio che utilizziamo, è sufficiente abilitare il motore direttamente sul portale per ottenere il tracciamento delle funzioni, il logging personalizzato e tutte le dipendenze che utilizziamo.
Il comportamento predefinito, però, include alcune informazioni delle quali non sempre necessitiamo, come per esempio le dipendenze su SQL o HTTP, le quali vanno ad ampliare notevolmente la quantità di dati salvati e di conseguenza il costo di AI.
Fortunatamente è possibile personalizzare il motore degli Application Insights agendo tramite il file host.json. Il file è disponibile nei progetti creati automaticamente tramite SDK o è visibile direttamente nel portale entrando nella funzione e alla voce Function app settings.
Nella sezione logging è disponibile una voce applicationInsights con il quale è possibile impostare:
- isEnabled: abilita il sampling, cioè la collezione degli eventi più significati, invece che di tutti gli eventi indistamente. Default è attivo;
- maxTelemetryItemsPerSecond: numero massimo di elementi al secondo. Default è 20;
- EnableLiveMetrics: abilita la metrica live consultabile su AI. Default è attivo;
- EnableDependencyTracking: abilita il tracciamento delle dipendenze. Default è attivo;
- EnablePerformanceCountersCollection[i/]: abilita i contatori e le prestazioni Kudu. Default è attivo.
E' sufficiente apportare la modifica al file o pubblicarlo nuovamente per ottenere i cambiamenti desiderati.
Per maggiori dettagli sul sampling rimandiamo alla documentazione https://docs.microsoft.com/en-us/azure/azure-monitor/app/sampling
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Migrare una service connection a workload identity federation in Azure DevOps
Copiare automaticamente le secret tra più repository di GitHub
Criptare la comunicazione con mTLS in Azure Container Apps
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Gestire domini wildcard in Azure Container Apps
Generare token per autenicarsi sulle API di GitHub
Utilizzare Tailwind CSS all'interno di React: installazione
Elencare le container images installate in un cluster di Kubernetes
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Controllare gli accessi IP alle app con Azure Container Apps
I più letti di oggi
- Utilizzare WebAssembly con .NET, ovunque
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
- Utilizzare il trigger SQL con le Azure Function
- Ottimizzazione dei block template in Angular 17
- Disabilitare automaticamente un workflow di GitHub (parte 2)