
Logging, Monitoring & Observability
ILogger, Serilog, Application Insights, OpenTelemetry (traces, metrics), health checks, structured logging
1Cos'è l'interfaccia ILogger in .NET?
Cos'è l'interfaccia ILogger in .NET?
Risposta
ILogger è l'interfaccia di logging standard fornita da Microsoft.Extensions.Logging. Definisce un contratto uniforme per registrare messaggi a diversi livelli di severità, consentendo di astrarre l'implementazione concreta del sistema di logging. Questa astrazione facilita il cambio di provider di log senza modificare il codice applicativo e favorisce i test unitari tramite dependency injection.
2Quali sono i livelli di log disponibili in ILogger, dal meno al più severo?
Quali sono i livelli di log disponibili in ILogger, dal meno al più severo?
Risposta
ILogger definisce sei livelli di severità ordinati: Trace per il debug dettagliato, Debug per le informazioni di sviluppo, Information per il flusso normale dell'applicazione, Warning per situazioni anomale ma non bloccanti, Error per errori recuperabili e Critical per guasti di sistema che richiedono un intervento immediato. Questa gerarchia consente di filtrare i log in base all'ambiente.
3Qual è la differenza principale tra LogLevel.Debug e LogLevel.Trace?
Qual è la differenza principale tra LogLevel.Debug e LogLevel.Trace?
Risposta
Trace è il livello più dettagliato, destinato a informazioni diagnostiche molto dettagliate come il flusso di esecuzione riga per riga, mentre Debug contiene informazioni utili allo sviluppo ma meno granulari. In produzione entrambi sono solitamente disattivati, ma Trace genera un volume molto maggiore e può influire sulle prestazioni anche in sviluppo se usato male.
Come iniettare ILogger in una classe di servizio in .NET?
Cos'è lo structured logging e quale vantaggio offre?
+19 domande da colloquio
Altri argomenti di colloquio .NET
Fondamenti di C#
LINQ & Delegates
Fondamenti del linguaggio C#
Fondamenti di ASP.NET Core
Ciclo di vita delle richieste in ASP.NET Core
Configuration & Settings
Ciclo di vita dell'applicazione
Dependency Injection
Entity Framework Core
Minimal APIs
Sviluppo di Web API
Async in ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Serializzazione JSON
Entity Framework Core avanzato
Funzionalità avanzate di C#
Clean Architecture
Test unitari & xUnit
Test di integrazione
Docker & Containerization
Gestione dei pacchetti NuGet
Memory Management & GC
Programmazione reattiva
Async/await & Pattern
.NET Design Patterns
Ottimizzazione delle prestazioni
Sicurezza e Best Practices
SignalR e tempo reale
Architettura a Microservizi
Padroneggia .NET per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis