.NET

Logging, Monitoring & Observability

ILogger, Serilog, Application Insights, OpenTelemetry (traces, metrics), health checks, structured logging

22 câu hỏi phỏng vấn·
Mid-Level
1

Interface ILogger trong .NET là gì?

Câu trả lời

ILogger là interface logging tiêu chuẩn do Microsoft.Extensions.Logging cung cấp. Nó định nghĩa một hợp đồng thống nhất để ghi thông điệp ở các mức độ nghiêm trọng khác nhau, cho phép trừu tượng hóa việc triển khai cụ thể của hệ thống logging. Sự trừu tượng này giúp dễ dàng chuyển đổi provider log mà không cần sửa code ứng dụng và tạo điều kiện cho unit testing thông qua dependency injection.

2

Các mức log có sẵn trong ILogger, từ nhẹ nhất đến nghiêm trọng nhất, là gì?

Câu trả lời

ILogger định nghĩa sáu mức độ nghiêm trọng được sắp xếp theo thứ tự: Trace cho gỡ lỗi chi tiết, Debug cho thông tin phát triển, Information cho luồng hoạt động bình thường của ứng dụng, Warning cho các tình huống bất thường nhưng không chặn, Error cho các lỗi có thể khôi phục, và Critical cho các lỗi hệ thống cần can thiệp ngay lập tức. Hệ thống phân cấp này cho phép lọc log theo môi trường.

3

Sự khác biệt chính giữa LogLevel.Debug và LogLevel.Trace là gì?

Câu trả lời

Trace là mức chi tiết nhất, dành cho thông tin chẩn đoán rất chi tiết như luồng thực thi từng dòng, trong khi Debug chứa thông tin hữu ích cho việc phát triển nhưng ít chi tiết hơn. Trong môi trường production, cả hai thường bị vô hiệu hóa, nhưng Trace tạo ra khối lượng lớn hơn nhiều và có thể ảnh hưởng đến hiệu năng ngay cả trong môi trường phát triển nếu dùng sai.

4

Làm thế nào để inject ILogger vào một class service trong .NET?

5

Structured logging là gì và nó mang lại lợi ích gì?

+19 câu hỏi phỏng vấn

Nắm vững .NET cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí