Топ 25 запитань і відповідей на інтерв’ю Log4j (2024)
Ось питання та відповіді на співбесіді Log4j для новачків, а також для досвідчених кандидатів, щоб отримати роботу своєї мрії.
1) Поясніть, що таке Log4j?
Log4j — це швидка, гнучка та надійна структура журналювання, написана мовою Java, розроблена на початку 1996 року. Вона поширюється за ліцензією на програмне забезпечення Apache і може використовуватися для малих і великих проектів. Він був перенесений на такі мови, як C, C++, C#, Python тощо.
Безкоштовне завантаження PDF: Запитання та відповіді на інтерв’ю Log4j
2) Поясніть, навіщо використовувати Apache Log4j?
- Оскільки він має відкритий вихідний код, його можна використовувати абсолютно безкоштовно.
- Ви можете легко зберегти інформацію журналу у файли або навіть бази даних.
- Можна використовувати для проектів будь-якого розміру, малих і великих.
3) Згадайте, які три основні компоненти Log4j?
Три основні компоненти Log4j:
- Лісоруби
- Додатки
- макет
4) Які є різні рівні журналу всередині компонента журналу?
У компонентах реєстратора є різні рівні журналу
- ВСІ
- Debug
- інформація
- Попереджати
- помилка
- Фатальний
- від
5) Поясніть, що таке Appenders у Log4j?
Додатки використовуються для доставки подій журналу до місця призначення. Простими словами, він використовується для запису журналів у файл.
6) Згадайте, які різні типи додатків?
Деякі з типів Appenders включають
- ConsoleAppender веде журнал у стандартний вихід
- FileAppender друкує журнали в певний файл
- Додавання файлів до файлу максимального розміру
7) Поясніть, що таке макети в log4j?
Макет у log4j відповідає за форматування інформації журналу в різних стилях.
8) Згадайте, які є два статичні методи для отримання об’єкта журналу?
Є два статичних методу для отримання об’єкта журналу
- Загальнодоступний статичний реєстратор getRootLogger()
- Загальнодоступний статичний реєстратор getLogger (назва рядка)
9) Згадайте, які інші об’єкти підтримки є в Log4j?
У фреймворку Log4j є й інші об’єкти підтримки
- Об'єкт рівня
- Об'єкт фільтра
- Рендерер об’єктів
- Менеджер журналів
10) Як визначається файл log4j?
Файл Log4j визначається ім'ям log4j.properties, він зберігає властивості в парах ключ-значення. За замовчуванням менеджер журналів шукає ім’я файлу log4j.properties у CLASSPATH.
11) Поясніть, що таке команда для запису вашої реєстраційної інформації у файл?
Щоб записати інформацію про журнал у файл, вам потрібно буде використати команду org.apache.log4j.FileAppender
12) Згадайте, які методи журналювання надає клас logger?
Клас Logger надає різноманітні методи для обробки дій журналювання. Для отримання об’єкта журналу передбачено два статичні методи
- Публічний статичний реєстратор getRootLogger();
- Загальнодоступний статичний реєстратор getLogger(String name);
13) Як у log4j можна увійти в базу даних?
Log4j API забезпечує об'єкт org.apache.log4j.jdbc. Об’єкт JDBCAppender може зберігати інформацію журналу в певній базі даних.
14) Поясніть, чи log4j є потокобезпечним?
Log4j є потокобезпечним, компоненти log4j створені для використання в багатопоточних системах.
15) Поясніть, чи можна налаштувати формат виведення журналу?
Так, ви можете розширити клас макета, щоб створити власний налаштований формат журналу. Додатки можна параметризувати для використання макета за вашим вибором.
16) Поясніть, які властивості системи перевіряє log4j?
Властивості системи, перевірені log4j, є
- Налагодження Log4j, якщо істина, log4j відображатиме внутрішні повідомлення про налагодження на консолі
- defaultInitOverride, якщо істина, log4j не виконуватиме ініціалізацію за замовчуванням
- конфігурація, URL для файлу конфігурації ініціалізації за замовчуванням
- configurationClass, Назва класу для конфігуратора для виконання файлу конфігурації ініціалізації за замовчуванням
- ігноруватиTCL, якщо істина, завантажувач класів потоків буде пропущено під час завантаження класів
17) Згадайте, яка роль фільтра в log4j?
Об’єкти фільтрів у log4j вирішують, чи запит на журналювання повинен оброблятися певним Appender чи ігноруватися.
18) Поясніть, як можна змусити кілька процесів реєструвати в одному файлі?
Ви можете мати кожен журнал процесу в сокет Appender. Приймаючий сокет-сервер може отримувати всі події та надсилати їх до єдиного файлу журналу.
19) Згадайте, яка різниця між Threshold і LevelRangeFilter у log4j?
І Threshold, і LevelRangeFilter роблять те саме. Однак поріг має бути швидшим. Фільтри дозволяють реалізувати власну логіку, і ви також можете зв'язати їх разом, якщо потрібно. Якщо вам потрібна базова порогова функція, то функції «порогова» буде достатньо.
20) Згадайте, що означає .class у контексті log4j?
У контексті log4j .class використовується для отримання повної назви вашого класу, і цей рядок використовується для налаштування цього об’єкта журналу.
Наприклад,
logger.getlogget (Myclass.class)
21) Поясніть, що таке журналювання на рівні пакету в log4j?
Ведення журналу на рівні пакета — це стандартне журналювання log4j, за допомогою якого ви визначите пакет і відповідний рівень.
22) Поясніть, що означає рівень WARN і TRACE у log4j?
Рівень Log4j WARN попереджає користувача про непередбачену подію. Повідомлення, що виходять із цього рівня, можуть не зупинити прогрес системи. Рівень TRACE надає більш детальну інформацію, ніж рівень DEBUG, і він залишатиметься на вершині ієрархії.
23) Поясніть, які символи формату використовуються в log4j?
У log4j використовуються такі символи формату
- L - він використовується для виведення номера рядка, з якого було оброблено або видано запит на журналювання
- м – Він використовується для виведення наданого програмою повідомлення, пов’язаного з подією журналювання
- р - Він використовується для виведення пріоритету події журналювання
- C - Він використовується для виведення імені класу абонента, який надсилає запит на журналювання
Якщо разом із символом використовується будь-яке число, це означає, що пріоритет події журналювання має бути виправданий шириною 4 символи.
24) Згадайте, який найкращий спосіб перейти від журналювання java.util до log4j?
Найкращий спосіб перейти з java.util, зареєстрованого в журналі, до log4j — це використати метод глобального пошуку/заміни файлів. Його буде замінено на «org.apache.log4j.Logger»
25) Поясніть, чому ви іноді отримуєте кілька копій повідомлення у файлі журналу?
Це може статися з двох причин
- Повторна конфігурація log4j
- Приєднання однакових додатків до кількох реєстраторів
Ці запитання для співбесіди також допоможуть вам у життєдіяльності (усному)
Важливим є лише 1 питання, яке не згадується у запитаннях вище.
Питання: як змінити рівень журналу під час виконання?