Ответы на вопросы на собеседование Log4j.

  • Из чего состоит логгер?

Любой регистратор событий состоит из трех элементов:
  • cобственно регистрирующего - logger;
  • направляющего вывод - appender;
  • форматирующего вывод - layout.

  • Какие есть уровни сообщении в log4j?

Приоритетов может быть ШЕСТЬ (log4j1.2.*):
  • FATAL - произошла фатальная ошибка - у этого сообщения наивысший приоритет
  • ERROR - в программе произошла ошибка
  • WARN - предупреждение в программе что-то не так
  • INFO - информация.
  • DEBUG - детальная информация для отладки
  • TRACE– трассировка всех сообщений в указанный аппендер
OFF< TRACE< DEBUG< INFO< WARN< ERROR< FATAL< ALL

  • Что такое Appender?

Вывод регистратора может быть направлен в различные места назначения: файл, консоль и т. д. Каждому из них соответствует класс, реализующий интерфейс org.apache.log4j.Appender. Кроме того, вывод в базу данных можно произвести с помощью класса JDBCAppender, в журнал событий ОС - NTEventLogAppender, на SMTP-сервер - SMTPAppender.
Если логгер - это та точка, откуда уходят сообщения в коде, то аппендер - это та точка, куда они приходят в конечном итоге. Например, файл или консоль.
Список таких точек, поддерживаемых Log4J:
  • консоль;
  • файлы (несколько различных типов);
  • JDBC;
  • темы (topics) JMS;
  • NT Event Log;
  • SMTP;
  • Сокет;
  • Syslog;
  • Telnet;
  • любой java.io.Writer или java.io.OutputStream.

  • Какие основные аппендеры Log4j?

Основными аппендерами, использующимися наиболее широко, являются файловые аппендеры. Их есть несколько типов:
  • org.apache.log4j.FileAppender
  • org.apache.log4j.RollingFileAppender
  • org.apache.log4j.DailyRollingFileAppender

  • Что такое Layout?

Вывод регистратора может иметь различный формат. Каждый формат представлен классом, производным от Layout. Все методы класса Layout предназначены только для создания подклассов.
  • org.apache.log4j.SimpleLayout - наиболее простой вариант. На выходе читается уровень вывода и сообщение.
  • org.apache.log4j.HTMLLayout - данный компоновщик форматирует сообщения в виде HTML-страницы.
  • org.apache.log4j.xml.XMLLayout - формирует сообщения в виде XML.
  • org.apache.log4j.PatternLayout и org.apache.log4j.EnhancedPatternLayout используют шаблонную строку для форматирования выводимого сообщения.

Рассказать друзьям:

3 коментарі :