
Logging, Monitoring & Observability
ILogger, Serilog, Application Insights, OpenTelemetry (traces, metrics), health checks, structured logging
1What is the ILogger interface in .NET?
What is the ILogger interface in .NET?
답변
ILogger is the standard logging interface provided by Microsoft.Extensions.Logging. It defines a uniform contract for recording messages at different severity levels, allowing abstraction of the concrete logging system implementation. This abstraction makes it easy to switch log providers without modifying application code and facilitates unit testing through dependency injection.
2What are the log levels available in ILogger, from least to most severe?
What are the log levels available in ILogger, from least to most severe?
답변
ILogger defines six ordered severity levels: Trace for detailed debugging, Debug for development information, Information for normal application flow, Warning for abnormal but non-blocking situations, Error for recoverable errors, and Critical for system failures requiring immediate intervention. This hierarchy allows filtering logs based on the environment.
3What is the main difference between LogLevel.Debug and LogLevel.Trace?
What is the main difference between LogLevel.Debug and LogLevel.Trace?
답변
Trace is the most verbose level, intended for very detailed diagnostic information like line-by-line execution flow, while Debug contains information useful for development but less granular. In production, both are typically disabled, but Trace generates much more volume and can impact performance even in development if misused.
How to inject ILogger into a service class in .NET?
What is structured logging and what advantage does it provide?
+19 면접 질문