Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > java log4j


Автор: pavlickm 24.12.2009, 15:09
у меня несколько проектов, а log4j.xml  один и когда я создаю новый проект , мне приходится постоянно изменять log4j.xml, так что бы логи нового проекта он сохранял в пакете нового проекта.
можно но ли настроить log4j.xml так, что бы создав новый проект и подключив в нём log4j логирование, логи сами сохранялись в том же пакете где и новый проект?

Автор: MisterCleric 24.12.2009, 17:53
А зачем? Тебе ж достаточно в твоем общем конфиге настроить appender и категорию по твоему новому проекту на этот appender.
Я вот использую для своих проектов applicationServers и по log4j у них идет рекомендация использовать общий глобальный, тот который контролируется контейнером сервера и не городить винегрет из конфигов в каждом проекте.

Автор: pavlickm 25.12.2009, 11:20
я вот не понял, что ты имеешь ввиду...
Цитата(MisterCleric @ 24.12.2009,  17:53)

тебе ж достаточно в твоем общем конфиге настроить appender и категорию по твоему новому проекту на этот appender...

ты предлагаешь мне каждый раз, при создании нового проекта, дописывать в log4j аппендер на мой новый проект? сейчас я так и делаю.
Цитата(MisterCleric @ 24.12.2009,  17:53)

и не городить винегрет из конфигов в каждом проекте

конфиг у меня один, нужен винегрет из лог-файлов в каждом новом пакете.

Автор: MisterCleric 25.12.2009, 12:31
Я не понимаю в чем собственно вопрос заключается?
вот тебе аппендер
Код

<appender name="project1FileAppender" class="org.apache.log4j.DailyRollingFileAppender">
        <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler"/>
        <param name="File" value="/user/projects/project1/project1.log"/>
        <param name="Append" value="false"/>
        <!-- Rollover at midnight each day -->
        <param name="DatePattern" value="'.'yyyy-MM-dd"/>

        <!-- Rollover at the top of each hour
        <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
        -->

        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%p - %c %m%n"/>
        </layout>
    </appender>


А вот категория по конкретному проекту 
Код

  <category name="my.company.project1">
        <priority value="DEBUG"/>
        <appender-ref ref="project1FileAppender"/>
    </category>


и так для всех проектов

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)