25 câu hỏi phỏng vấn Log4j và câu trả lời hàng đầu (2025)
Dưới đây là những câu hỏi phỏng vấn Log4j và câu trả lời dành cho cả ứng viên mới và ứng viên có kinh nghiệm để có được công việc mơ ước.
1) Giải thích Log4j là gì?
Log4j là một khuôn khổ ghi nhật ký nhanh, linh hoạt và đáng tin cậy được viết bằng Java phát triển vào đầu năm 1996. Nó được phân phối theo giấy phép phần mềm Apache và có thể được sử dụng cho các dự án quy mô nhỏ đến lớn. Nó đã được chuyển sang các ngôn ngữ như C, C++, C#, Python, v.v.
Tải xuống PDF miễn phí: Câu hỏi và câu trả lời phỏng vấn Log4j
2) Giải thích lý do tại sao nên sử dụng Apache Log4j?
- Vì là mã nguồn mở nên hoàn toàn miễn phí khi sử dụng.
- Bạn có thể dễ dàng lưu thông tin nhật ký vào tệp hoặc thậm chí vào cơ sở dữ liệu.
- Có thể sử dụng cho các dự án có quy mô lớn hay nhỏ.
3) Hãy nêu ba thành phần chính của Log4j?
Ba thành phần chính của Log4j là
- Người khai thác gỗ
- Người bổ sung
- Bố trí
4) Bên trong thành phần ghi nhật ký có những cấp độ ghi nhật ký nào?
Các mức nhật ký khác nhau bên trong các thành phần nhật ký là
- Tất cả
- Gỡ lỗi
- Thông tin
- Cảnh báo
- lỗi
- Fatal
- tắt
5) Giải thích Appender trong Log4j là gì?
Appender được sử dụng để chuyển LogEvents đến đích. Nói một cách đơn giản, nó được sử dụng để ghi nhật ký vào tệp.
6) Hãy nêu những loại Appender khác nhau?
Một số loại Appenders bao gồm
- ConsoleAppender ghi vào đầu ra tiêu chuẩn
- FileAppender in nhật ký vào một số tệp
- Cuộn phần bổ sung tệp vào một tệp có kích thước tối đa
7) Giải thích layout trong log4j là gì?
Bố cục trong log4j chịu trách nhiệm định dạng thông tin ghi nhật ký theo nhiều kiểu khác nhau.
8) Hãy nêu hai phương thức tĩnh để lấy đối tượng logger?
Hai phương pháp tĩnh để lấy đối tượng logger là
- Công khai tĩnh Logger getRootLogger()
- Công khai tĩnh Logger getLogger(String name)
9) Hãy kể tên những đối tượng hỗ trợ khác trong Log4j?
Có những đối tượng hỗ trợ khác trong khuôn khổ Log4j chúng là
- Đối tượng cấp độ
- Lọc Đối tượng
- Trình kết xuất đối tượng
- Trình quản lý nhật ký
10) File log4j được định nghĩa như thế nào?
Tệp Log4j được định nghĩa theo tên log4j.properties, nó lưu trữ các thuộc tính theo cặp khóa-giá trị. Theo mặc định, trình quản lý nhật ký sẽ tìm kiếm tên tệp log4j.properties trong ĐƯỜNG DẪN LỚP.
11) Giải thích lệnh ghi thông tin đăng nhập vào tệp là gì?
Để ghi thông tin đăng nhập của bạn vào một tệp, bạn sẽ cần sử dụng lệnh org.apache.log4j.FileAppender
12) Hãy nêu những phương thức ghi nhật ký được cung cấp bởi lớp logger?
Lớp Logger cung cấp nhiều phương thức khác nhau để xử lý các hoạt động ghi nhật ký. Để có được một đối tượng logger, nó cung cấp hai phương thức tĩnh
- Công cụ ghi nhật ký tĩnh công khai getRootLogger();
- Công cụ ghi nhật ký tĩnh công khai getLogger(String name);
13) Trong log4j bạn có thể đăng nhập vào cơ sở dữ liệu như thế nào?
Nhật ký4j API cung cấp đối tượng org.apache.log4j.jdbc. Đối tượng JDBCAppender có thể đưa thông tin ghi nhật ký vào một cơ sở dữ liệu cụ thể.
14) Giải thích xem log4j có phải là luồng an toàn không?
Log4j là một công cụ an toàn cho luồng, các thành phần log4j được xây dựng để sử dụng trong các hệ thống đa luồng.
15) Giải thích liệu định dạng đầu ra của nhật ký có thể được tùy chỉnh không?
Có, bạn có thể mở rộng lớp bố cục để tạo định dạng nhật ký tùy chỉnh của riêng bạn. Các trình bổ sung có thể được tham số hóa để sử dụng bố cục theo lựa chọn của bạn.
16) Giải thích những thuộc tính hệ thống nào được kiểm tra bởi log4j?
Các thuộc tính hệ thống được kiểm tra bởi log4j là
- Gỡ lỗi Log4j, nếu đúng, log4j sẽ hiển thị các thông báo gỡ lỗi nội bộ tới bảng điều khiển
- mặc địnhInitOverride, nếu đúng, log4j sẽ không thực hiện khởi tạo mặc định
- cấu hình, URL cho tệp cấu hình khởi tạo mặc định
- cấu hìnhLớp, Tên lớp cho trình cấu hình để thực thi tệp cấu hình khởi tạo mặc định
- bỏ qua TCL, nếu đúng, trình tải lớp luồng sẽ bị bỏ qua khi tải các lớp
17) Hãy cho biết vai trò của bộ lọc trong log4j là gì?
Đối tượng lọc trong log4j quyết định xem yêu cầu ghi nhật ký có nên được Appender cụ thể xử lý hay bỏ qua hay không.
18) Giải thích làm thế nào bạn có thể ghi nhiều tiến trình vào cùng một tệp?
Bạn có thể có mỗi bản ghi quy trình vào một socket Appender. Máy chủ socket nhận có thể nhận tất cả các sự kiện và gửi chúng đến một tệp nhật ký duy nhất.
19) Hãy cho biết sự khác biệt giữa Threshold và LevelRangeFilter trong log4j là gì?
Cả Threshold và LevelRangeFilter đều thực hiện cùng một chức năng. Tuy nhiên, ngưỡng sẽ nhanh hơn. Bộ lọc cho phép bạn triển khai logic của riêng mình và bạn cũng có thể liên kết chúng với nhau nếu cần. Nếu bạn cần chức năng ngưỡng cơ bản, thì hàm "threshold" sẽ đủ.
20) Hãy cho biết .class có nghĩa là gì trong ngữ cảnh log4j?
Trong ngữ cảnh log4j, .class được sử dụng để lấy tên đầy đủ của lớp của bạn và chuỗi đó được sử dụng để cấu hình đối tượng ghi nhật ký này.
Ví dụ,
logger.getlogget (Myclass.class)
21) Giải thích ghi nhật ký ở cấp độ gói trong log4j là gì?
Ghi nhật ký ở cấp độ gói là ghi nhật ký tiêu chuẩn của log4j, với ghi nhật ký này, bạn sẽ xác định được gói và cấp độ liên quan.
22) Giải thích mức WARN và TRACE biểu thị điều gì trong log4j?
Mức WARN của Log4j đưa ra cảnh báo về một sự kiện không lường trước cho người dùng. Các thông báo phát ra từ mức này có thể không dừng tiến trình của hệ thống. Mức TRACE cung cấp thông tin chi tiết hơn mức DEBUG và sẽ nằm ở đầu hệ thống phân cấp.
23) Giải thích các ký tự định dạng được sử dụng trong log4j là gì?
Các ký tự định dạng được sử dụng trong log4j là
- L - nó được sử dụng để xuất ra số dòng từ nơi yêu cầu ghi nhật ký được xử lý hoặc phát hành
- NS - Nó được sử dụng để đưa ra thông báo do ứng dụng cung cấp liên quan đến sự kiện ghi nhật ký
- P - Nó được sử dụng để đưa ra mức độ ưu tiên của sự kiện ghi nhật ký
- C - Nó được sử dụng để xuất ra tên lớp của người gọi phát hành yêu cầu ghi nhật ký
Khi bất kỳ số nào được sử dụng cùng với ký tự, điều đó có nghĩa là mức độ ưu tiên của sự kiện ghi nhật ký phải được căn chỉnh theo chiều rộng 4 ký tự.
24) Hãy cho biết cách tốt nhất để di chuyển từ java.util logging sang log4j?
Cách tốt nhất để di chuyển từ java.util đã đăng nhập sang log4j là sử dụng phương pháp tìm kiếm/thay thế tệp toàn cục. Nó sẽ thay thế bằng “org.apache.log4j.Logger”
25) Giải thích tại sao đôi khi bạn lại nhận được nhiều bản sao của tin nhắn trong tệp nhật ký?
Có thể có hai lý do tại sao điều này có thể xảy ra
- Cấu hình lặp lại của log4j
- Đính kèm cùng một appender vào nhiều logger
Những câu hỏi phỏng vấn này cũng sẽ giúp ích cho bài thi viva(orals) của bạn
Chỉ có 1 câu hỏi quan trọng và không được đề cập trong các câu hỏi trên.
Câu hỏi: Làm thế nào để thay đổi Mức nhật ký khi chạy?