Per diagnosticare o monitorare lo stato del nostro applicativo ricorriamo spesso all'utilizzo di istruzioni di logging che forniscono dettagli sul funzionamento del nostro codice: input, logiche e output. Ci sono molti framework per farlo; partendo da System.Diagnostics già incluso nel .NET Framework, possiamo usare log4net, NLog o Serilog, tra i più famosi. Ognuno di questi dispone di appender, sink o output che sostanzialmente scrivono il log da qualche parte.
Se usiamo Application Insights per monitorare la nostra applicazione diventa senz'altro utile vedere queste informazioni personalizzate insieme alle altre collezionate dal motore. In questo modo, in caso di errori, per esempio, potremmo vedere oltre ai dettagli della richiesta e dell'errore, anche le fasi che sono state coinvolte, dandoci un'idea più chiara di ciò che è successo.
Per farlo dobbiamo utilizzare i pacchetti NuGet disponibili a seconda del sistema di logging che stiamo usando.

L'installazione modifica in autonomia i web.config, impostando la libreria come tipologia di output. Non sono necessari altri passi e possiamo procedere alla pubblicazione dell'applicazione. Se stiamo utilizzando, invece, una libreria di logging non prevista da Application Insights, possiamo sfruttare che molto spesso queste scrivono anche mediante System.Diagnostics.Trace, permettendoci quindi di usare il pacchetto NuGet con id Microsoft.ApplicationInsights.TraceListener.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ordinare randomicamente una lista in C#
Miglioramenti agli screen reader e al contrasto in Angular
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
Cambiare la chiave di partizionamento di Azure Cosmos DB
Aggiornare a .NET 9 su Azure App Service
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Miglioramenti nell'accessibilità con Angular CDK
Gestione CSS in Blazor con .NET 9
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Ordine e importanza per @layer in CSS
Utilizzare gRPC su App Service di Azure
I più letti di oggi
- Anonimizzare i dati sensibili nei log di Azure Front Door
- Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
- Utilizzare StartsWith ed EndsWith con Span
- Managed deployment strategy in Azure DevOps
- Generare una User Delegation SAS in .NET per Azure Blob Storage
- Utilizzare l'attributo accesskey in HTML
- Utilizzare l nesting nativo dei CSS
- Utilizzare i variable font nel CSS
- Rendere le variabili read-only in una pipeline di Azure DevOps
- Configurare e gestire sidecar container in Azure App Service