Форум программистов, компьютерный форум, киберфорум Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/19: Рейтинг темы: голосов - 19, средняя оценка - 5.00
Эксперт функциональных языков программированияЭксперт по математике/физике
4302 / 2093 / 431
Регистрация: 19.07.2009
Сообщений: 3,163
Записей в блоге: 24

Log4J Configuration File

28.08.2012, 15:48. Показов 3686. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Собственно, не получается сконфигурировать log4j через xml файл.
Делаю по и http://logging.apache.org/log4... ation.html
Костяк:
Java Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
package packagename;
 
import org.apache.log4j.Logger;
 
public class ClassName {
 
    public static void main(String[] args) {
        logger.info("Log Message here");
    }
 
    private static Logger logger = Logger.getLogger(ClassName.class);
 
}
Конфиг:
XML Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="false">
 
    <appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
        <param name="Encoding" value="UTF-8"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{ISO8601} [%-5p][%-16.16t][%32.32c] - %m%n" />
        </layout>
    </appender>
 
    <root>
        <priority value="ERROR"/>
        <appender-ref ref="ConsoleAppender" />
    </root>
 
    <logger name="packagename.ClassName">
        <level value="INFO"/>
        <appender-ref ref="ConsoleAppender" />
    </logger>
 
</log4j:configuration>
Выводит:
Code Скопировано
1
2
3
4
log4j:WARN Continuable parsing error 22 and column 23
log4j:WARN The content of element type "log4j:configuration" must match "(renderer*,throwableRenderer?,appender*,plugin*,(category|logger)*,root?,(categoryFactory|loggerFactory)?)".
2012-08-28 14:38:54,319 [INFO ][main            ][           packagename.ClassName] - Log Message here
2012-08-28 14:38:54,319 [INFO ][main            ][           packagename.ClassName] - Log Message here
Почему пишет об ошибке (я так понял, что файл не соответствует DTD)?
Почему дважды выводится сообщение?

upd: если правильно понял, дочерний логгер аддитивно принял аппендер рута и переназначил ему собственный уровень видимости, поэтому сообщение дублируется: в аппендер рута и в собственный аппендер. Я прав?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.08.2012, 15:48
Ответы с готовыми решениями:

Log4j в разные файлы
Подскажите как можно записывать с log4j каждую сессию в разные файлы. то есть в приложении записывать каждую сессию в разные файлы. имя...

Log4J and Tomcat4(WSDP)
Добрый день, Немогу подключить Log4J к Tomcat4(with WebService DevPack) инструкция в short manual дословно гласит : Under Tomcat...

Log4j и аналогичные библиотеки
Здравствуйте! Какие аналоги ещё существуют? Почему их практически не используют?

2
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
28.08.2012, 19:57
Исходя из "(renderer*,throwableRenderer?,appender* ,plugin*,(category|logger)*,root?,(categ oryFactory|loggerFactory)?)" могу предположить, что в xml сначала должны быть элементы <logger />, а потом <root />
1
ЕвгенийН
31.12.2012, 14:14
Если использование log4j не принципиально, как вариант можно сконфигурировать через properties, пример log4j.properties
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.12.2012, 14:14
Помогаю со студенческими работами здесь

Одинаковая длина логов в Log4J
Можно ли как то добится того что бы названия класов дополнялись пробелами до какой то величины, потому что сложно читать логи когда...

Не получается настроить логирование с slf4 и log4j
Здравствуйте. Изучаю логирование. Нашёл хеллоу ворлд по log4j, всё сделал - всё работает. Попробовал заменить на slf4-log4j, но ничего не...

Использование Log4j для отправки сообщений по почте
Здравствуйте, Кто-нибудь смог настроить log4j (в паре с Tomcat) для отсылки сообщений об ошибках по почте? Использую такую...

Есть ли в log4j возможность одновременно логировать в разные файлы?
Не подскажете как можно настроить log4j что бы иметь лог только своего приложения (ejb под jboss), без служебной информации jbossa....

Можна ли на хостинге задать относительный путь для размещения лога log4j?
Можна ли на хостинге задать относительный путь(относительно файлов моего сайта)для размещения лога log4j, а не абсолютный . Хостинг на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
Взаимодействие Python с REST API
py-thonny 27.03.2025
REST API - это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. Python располагает функциональным набором инструментов для работы с REST API и основная библиотека для. . .
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер