Отключение ведения журнала для пристани от Maven - PullRequest
2 голосов
/ 15 января 2010

Я скачал большой фреймворк, который мне нужно построить из исходного кода. Проект использует структуру сборки maven и включает в себя демонстрационное приложение, которое можно просматривать с помощью встроенной пристани. Плагины Maven обрабатывают все эти вещи.

Однако, когда я запускаю демонстрационное приложение (с mvn jetty: run), я не могу его использовать, потому что по какой-то причине включена регистрация на уровне DEBUG, и приложение тратит большую часть своего времени, регистрируя множество операторов , Отзывчивость сводится практически к нулю.

Фреймворк (geomajas 1.5.0) использует SLF4J, но я не могу понять, где он настроен или где его можно отключить.

Любые идеи приветствуются ... спасибо!

Обновление: Видимо они используют logback. Я нашел файл конфигурации (logback.xml), в котором я отредактировал уровни DEBUG и заменил их на ERROR.

Чтобы изменения распространялись, я очистил проект и перестроил его. Но проблема остается! Я вручную просмотрел файлы logback.xml в папке target, и они обновились. Но я все еще вижу записи журнала!

Обновление 2 Я на Windows 7, кстати.

Ответы [ 4 ]

7 голосов
/ 15 января 2010

Самый простой и простой способ отключить ведение журнала - использовать привязку NOP . Для этого отредактируйте geomajas/geomajas-dojo-example/pom.xml и измените зависимости журналирования на:

    <!-- logging dependencies, delegate all to slf4j and use logback -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.5.8</version>
    </dependency>
    <dependency>
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-nop</artifactId>
       <version>1.5.8</version>
    </dependency>

И запустить mvn jetty:run.

1 голос
/ 15 января 2010

глядя на это руководство / обзор slf4j http://www.slf4j.org/manual.html похоже, что вы можете отключить всю запись в журнал, используя jar slf4j NOP (slf4j-nop-1.5.10.jar). Поэтому вам, вероятно, потребуется найти и заменить текущий файл jar реализации slf4j в папке WEB-INF / lib ваших проектов на файл jar NOP.

Хотя, скорее всего, он использует реализацию log4j, в этом случае вам нужно найти log4j.xml или log4j.properties и отредактировать / удалить их. Хотя их может быть сложно найти - сначала загляните в WEB-INF / classes, а затем в какую-нибудь директорию config.

РЕДАКТИРОВАТЬ { Немного некрасиво, но если вы просто хотите, чтобы он работал и работал как можно быстрее, вы можете перенаправить stdout и stderr в / dev / null, что должно сделать его немного быстрее, поскольку он не будет записывать на диск или консоль:

mvn jetty: запустить> dev / null 2> & 1 }

НТН

0 голосов
/ 14 августа 2010

Geomajas использует logback для примеров приложений. Вы можете настроить ведение журнала, используя файл logback.xml в src / main / resources.

Выключить все можно с помощью файла конфигурации, например:

<configuration>
    <root>
        <level value="OFF"/>
    </root>
</configuration>

С уважением, Joachim

0 голосов
/ 15 января 2010

Попробуйте выяснить конфигурацию log4j (если она используется для ведения журнала) - это может быть файл log4j.xml (или log4j.properties). Если вы удалите этот файл из classpath, регистрация не будет вообще. Если вы хотите снизить уровень журналов, попробуйте закомментировать некоторые разделы журнала в этом файле, например,

<!--<logger name="org.hibernate">
    <level value="debug"/> 
    <appender-ref ref="hibernate-file"/>
</logger>-->

В этом примере не будет журналов для классов из пакета org.hibernate.

...