Подтвердить что ты не робот

Solr: как отказаться от регистрации

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

Я даже не уверен, какую фреймворку он использует (потому что, знаете, java.util.logging, log4j и commons-logging не хватало, нам нужно было добавить slf4j!) ОК, извините, пришлось отпустить этот незначительный пронзительный промах.: -)

Итак, у меня есть src/main/resources/log4j.properties с:

log4j.rootLogger=WARN, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.conversionPattern=%5p [%t] (%F:%L) - %m%n
org.apache.solr.core=WARN
org.apache.solr.update.processor=WARN

И тогда для хорошей меры у меня src/main/resources/logging.properties настроено с:

.level = WARNING

com.gwtstore.level=ALL
com.appgravity.level=ALL
org.apache.solr.core.level=WARNING
org.apache.solr.update.processor.level=WARNING

И все же кое-как, я все еще вижу тонны следующего:

INFO: {add=[-7757828706308755634]} 0 0
Feb 21, 2011 6:12:23 PM org.apache.solr.core.SolrCore execute
INFO: [] webapp=null path=/update params={} status=0 QTime=0 

Здесь мой путь к классам:

src/test/resources
src/test/java
src/main/resources
src/main/java
idea_rt.jar
junit-rt.jar
deploy.jar
dt.jar
javaws.jar
jce.jar
jconsole.jar
management-agent.jar
plugin.jar
sa-jdi.jar
alt-rt.jar
charsets.jar
classes.jar
jsse.jar
ui.jar
apple_provider.jar
dnsns.jar
localedata.jar
sunjce_provider.jar
sunpkcs11.jar
test-classes
classes
junit-4.8.2.jar
gwt-user-2.1.1.jar
gwt-servlet-2.1.1.jar
servlet-api-2.5.jar
weld-servlet-1.1.0.Final.jar
hibernate-core-3.6.0.Final.jar
antlr-2.7.6.jar
commons-collections-3.2.1.jar
dom4j-1.6.1.jar
hibernate-commons-annotations-3.2.0.Final.jar
slf4j-api-1.6.0.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
jta-1.1.jar
hibernate-entitymanager-3.6.0.Final.jar
javassist-3.12.0.GA.jar
hibernate-c3p0-3.3.1.GA.jar
c3p0-0.9.1.jar
hibernate-validator-4.1.0.Final.jar
validation-api-1.0.0.GA.jar
cglib-nodep-2.2.jar
javax.inject-1.jar
cdi-api-1.0.jar
jboss-interceptor-api-1.1.jar
jsr250-api-1.0.jar
lucene-core-2.9.1.jar
lucene-snowball-2.9.1.jar
mongo-java-driver-2.4.jar
mysql-connector-java-5.1.6.jar
protobuf-java-2.2.0.jar
proxytoys-1.0.jar
quartz-1.8.4.jar
commons-lang-2.5.jar
commons-httpclient-3.1.jar
commons-logging-1.0.4.jar
commons-codec-1.2.jar
nekohtml-1.9.7.jar
xercesImpl-2.8.1.jar
xml-apis-1.3.03.jar
gwtquickstarter.jar
solr-solrj-1.4.1.jar
commons-io-1.4.jar
commons-fileupload-1.2.1.jar
wstx-asl-3.2.7.jar
stax-api-1.0.1.jar
geronimo-stax-api_1.0_spec-1.0.1.jar
solr-core-1.4.1.jar
lucene-analyzers-2.9.3.jar
lucene-highlighter-2.9.3.jar
lucene-memory-2.9.3.jar
lucene-queries-2.9.3.jar
lucene-misc-2.9.3.jar
lucene-spellchecker-2.9.3.jar
solr-commons-csv-1.4.1.jar
wstx-asl-3.2.7.jar
morphia-0.98s10.jar
androidmarketapi-0.5.jar
openid4java-0.9.5.jar
4b9b3361

Ответ 1

  • Вам нужно убедиться, что файл свойств ведения журнала развернут на .../yourWebapp/WEB-INF/classes/log4j.properties.

  • Если есть файл .../yourWebapp/WEB-INF/classes/log4j.xml, это переопределит файл свойств.

  • Местоположение конфигурационного файла Log4j также может быть переопределено свойствами системы.

Для получения дополнительной информации о том, как Log4j получает свою конфигурацию, посмотрите этот раздел в представлении Log4j.

Ответ 2

Если вы просто хотите полностью отключить ведение журнала с сервера Solr, просто посетите http://(YOUR-IP):8080/solr/admin и перейдите к опции ведения журнала, которая видна на верхний список.

На этой странице вы можете найти подробную таблицу для различных уровней ведения журнала, определенных для вашей установки Solr. Либо измените свой родительский регистратор, чтобы они использовали регистратор, который вы используете в своем приложении, либо полностью отключили их.

Надеюсь, это то, что вы искали. Благодаря

Ответ 3

В следующей ссылке обсуждается, как правильно настроить протокол Solr.

http://lucidworks.lucidimagination.com/display/solr/Configuring+Logging

Если вы хотите временно внести изменения в ведение журнала, то это можно сделать на странице администрирования Solr. Для внесения изменений навсегда вам нужно будет добавить файл свойств журнала JDK в веб-приложение Solr.

Для tomcat следуют шаги

  • Создайте каталог классов в папке WB_INF для веб-приложения solr т.е. _% TOMCAT_INSTALL_DIR%/webapps/solr/WEB-INF/classes/logging.properties_
  • Создать файл logging.properties
  • Добавьте следующие записи для установки уровня журнала (уровни журналов можно установить из FINEST в SEVERE для класса или всего пакета)

org.apache.commons.digester.Digester.level = FINEST

org.apache.solr.level = ПРЕДУПРЕЖДЕНИЕ

Ответ 4

Сделав это для log4j для SOLR, я могу сказать вам, что это было больно. Log4j не работает с SOLR из коробки. Во всяком случае, вот что я сделал, чтобы заставить SOLR работать с slf4j и log4j. Если есть более простой способ - удивительный - сделайте это.

В solr/lib

  • Добавить slf4j-log4j12-1.5.11.jar(make верные версии соответствуют slf4j-api -??? )
  • Удалить slf4j-jdk14-1.5.5.jar(важно - иначе log4j не будет использоваться)

в ресурсах вашего веб-приложения добавьте свой log4j.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "/WEB-INF/log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" >
  <appender class="org.apache.log4j.DailyRollingFileAppender" name="FILE" >
    <param name="file" value="logs/jetty.log" />
    <param name="datePattern" value="'.'yyyy-MM" />
    <param name="append" value="true" />
    <layout class="org.apache.log4j.PatternLayout" >
      <param name="ConversionPattern" value="%d [%t] %-5p %C{6} (%F:%L) - %m%n" />
    </layout>
  </appender>
  <root>
    <priority value="error"></priority>
    <appender-ref ref="FILE" />
  </root>
</log4j:configuration>

Ответ 5

После долгих испытаний по размещению слова WARNING в бесконечном количестве файлов, похоже, что мне наконец удалось замедлить ведение журнала Tomcat Solr. Как это было бы полезно для вашей ситуации/окружающей среды полностью вне меня, так как мой мозг полон конфигураций JAVA на данный момент. Я все равно записываю его, надеясь предотвратить некоторую боль для кого-то в будущем.

Я мог полностью отключить некоторые протоколирования на этом пути, поэтому вам может понадобиться отменить то, что я буду здесь описывать при отладке (или, например, на сервере разработки).

  • Создайте файл с именем logging.properties в папке конфигурации, например. в /etc/tomcat..., если он еще не существует.

  • Если logging.properties уже существует, прокомментируйте все. Вы можете не комментировать другие строки, хотя, если вы хотите выполнить некоторые протоколирования.

  • Добавить/вставить следующее в logging.properties:

    .level = WARNING
    
  • Создайте файл с именем setenv.sh в папке $CATALINA_HOME/bin, если он еще не существует. (Где $CATALINA_HOME? Обычно в /usr/share/tomcat..., но введите
    ps -ef | grep tomcat
    и охота на строку catalina.home или что-то подобное на выходе, чтобы быть уверенным.)

  • Добавить/вставить следующее в setenv.sh:

    export JAVA_OPTS="${JAVA_OPTS} -Djava.util.logging.config.file=/etc/tomcat.../logging.properties"
    
  • Перезапустить Tomcat (например, /etc/init.d/tomcat... restart, зависит от вашей ОС)

(Замените tomcat... своей фактической версией Tomcat)