JAVA LOGGING » История » Версия 1
Александр Александров, 22.04.2019 00:27
1 | 1 | Александр Александров | h1. JAVA LOGGING |
---|---|---|---|
2 | |||
3 | h2. Вопросы |
||
4 | |||
5 | # Из чего состоит логгер? |
||
6 | # Какие есть уровни сообщении в log4j? |
||
7 | # Что такое Appender? |
||
8 | # Какие основные аппендеры Log4j? |
||
9 | # Что такое Layout? |
||
10 | |||
11 | h2. Ответы |
||
12 | |||
13 | h3. Из чего состоит логгер? |
||
14 | |||
15 | Любой регистратор событий состоит из трех элементов: |
||
16 | |||
17 | * cобственно регистрирующего - logger; |
||
18 | * направляющего вывод - appender; |
||
19 | * форматирующего вывод - layout. |
||
20 | |||
21 | h3. Какие есть уровни сообщении в log4j? |
||
22 | |||
23 | * FATAL - произошла фатальная ошибка - у этого сообщения наивысший приоритет |
||
24 | * ERROR - в программе произошла ошибка |
||
25 | * WARN - предупреждение в программе что-то не так |
||
26 | * INFO - информация. |
||
27 | * DEBUG - детальная информация для отладки |
||
28 | * TRACE– трассировка всех сообщений в указанный аппендер |
||
29 | |||
30 | <pre> |
||
31 | OFF< TRACE< DEBUG< INFO< WARN< ERROR< FATAL< ALL |
||
32 | </pre> |
||
33 | |||
34 | h3. Что такое Appender? |
||
35 | |||
36 | Вывод регистратора может быть направлен в различные места назначения: файл, консоль и т. д. Каждому из них соответствует класс, реализующий интерфейс org.apache.log4j.Appender. Кроме того, вывод в базу данных можно произвести с помощью класса JDBCAppender, в журнал событий ОС - NTEventLogAppender, на SMTP-сервер - SMTPAppender. Если логгер - это та точка, откуда уходят сообщения в коде, то аппендер - это та точка, куда они приходят в конечном итоге. Например, файл или консоль. |
||
37 | |||
38 | Список таких точек, поддерживаемых Log4J: |
||
39 | |||
40 | * консоль; |
||
41 | * файлы (несколько различных типов); |
||
42 | * JDBC; |
||
43 | * темы (topics) JMS; |
||
44 | * NT Event Log; |
||
45 | * SMTP; |
||
46 | * Сокет; |
||
47 | * Syslog; |
||
48 | * Telnet; |
||
49 | * любой java.io.Writer или java.io.OutputStream. |
||
50 | |||
51 | h3. Какие основные аппендеры Log4j? |
||
52 | |||
53 | Основными аппендерами, использующимися наиболее широко, являются файловые аппендеры. Их есть несколько типов: |
||
54 | |||
55 | * org.apache.log4j.FileAppender |
||
56 | * org.apache.log4j.RollingFileAppender |
||
57 | * org.apache.log4j.DailyRollingFileAppender |
||
58 | |||
59 | h3. Что такое Layout? |
||
60 | |||
61 | Вывод регистратора может иметь различный формат. Каждый формат представлен классом, производным от Layout. Все методы класса Layout предназначены только для создания подклассов. |
||
62 | |||
63 | * org.apache.log4j.SimpleLayout - наиболее простой вариант. На выходе читается уровень вывода и сообщение. |
||
64 | * org.apache.log4j.HTMLLayout - данный компоновщик форматирует сообщения в виде HTML-страницы. |
||
65 | * org.apache.log4j.xml.XMLLayout - формирует сообщения в виде XML |
||
66 | * org.apache.log4j.PatternLayout и org.apache.log4j.EnhancedPatternLayout используют шаблонную строку для форматирования выводимого сообщения. |