26

OK、それで私はSolrにワクワクしていますが、大量のインポートを実行したときに実際に許容できる速度で実行されるように、ロギングレベルを下げる方法がわからないようです。

どのロギングフレームワークを使用しているかさえわかりません(java.util.logginglog4jcommons-loggingだけで は不十分だったため、 slf4jをミックスに追加する必要がありました!)OK申し訳ありませんが、それを許可する必要がありましたマイナーな暴言のスリップ。:-)

だから私は次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
4

6 に答える 6

10
  1. ロギングプロパティファイルがにデプロイされていることを確認する必要があります.../yourWebapp/WEB-INF/classes/log4j.properties

  2. ファイルがある場合.../yourWebapp/WEB-INF/classes/log4j.xml、これはプロパティファイルを上書きします。

  3. Log4j構成ファイルの場所は、システムプロパティによって上書きすることもできます。

Log4jがその構成を取得する方法の詳細については、Log4jの概要のこのセクションを参照してください。

于 2011-02-22T00:23:15.130 に答える
4

Solrサーバーからのロギングを完全にオフにしたい場合は、http://(YOUR-IP):8080 / solr / adminにアクセスして、トップリストに表示されるロギングオプションに移動してください。

そのページで、Solrインストール用に定義されたさまざまなログレベルの詳細な表を見つけることができます。親ロガーを変更して、アプリケーションで使用しているロガーを使用するようにするか、完全にオフにします。

これがあなたが探していたものであることを願っています。ありがとう

于 2011-11-09T19:36:38.347 に答える
4

次のリンクでは、Solrロギングを適切に構成する方法について説明しています。

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

ロギングを一時的に変更したい場合は、Solr管理ページから行うことができます。永続的に変更を加えるには、JDKロギングプロパティファイルをSolrWebアプリケーションに追加する必要があります。

Tomcatの場合、以下の手順があります

  1. solr WebアプリケーションのWB_INFフォラーにclassesディレクトリーを作成します。つまり、_%TOMCAT_INSTALL_DIR%/ webapps / solr / WEB-INF / classes / logging.properties_
  2. logging.propertiesファイルを作成します
  3. ログレベルを設定するための次のエントリを追加します(ログレベルは、クラスまたはパッケージ全体に対してFINESTからSEVEREに設定できます)

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

org.apache.solr.level=警告

于 2012-04-23T23:09:24.910 に答える
1

これをSOLRのlog4jに対して行ったので、苦痛だったと言えます。Log4jは、そのままではSOLRではうまく機能しません。とにかく、SOLRをslf4jとlog4jで動作させるために私がしたことは次のとおりです。より簡単な方法がある場合-素晴らしい-それを行います。

solr/lib内

  • slf4j-log4j12-1.5.11.jarを追加します(バージョンがslf4j-api-???と一致することを確認してください)
  • slf4j-jdk14-1.5.5.jarを削除します(重要-それ以外の場合、log4jは使用されません)

Webアプリケーションのリソースに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>
于 2011-02-22T18:54:54.227 に答える
1

単語を無限に多くのファイルに配置するという長い試行の結果、WARNINGTomcatSolrのログ記録をやっと遅くすることができたようです。私の脳は今のところJAVA構成でいっぱいなので、それがあなたの状況/環境にどのように役立つかは完全に私を超えています。とにかく書き留めておきますが、将来誰かの痛みを防ぐことを願っています。

途中で一部のロギングを完全に無効にした可能性があるため、デバッグ時に(または開発サーバーなどで)ここで説明する内容を元に戻す必要がある場合があります。

  1. logging.propertiesconfigフォルダーに名前の付いたファイルを作成します。たとえば、ファイル/etc/tomcat...がまだ存在しない場合などです。

  2. すでに存在する場合logging.propertiesは、すべてコメントアウトします。ただし、ロギングが必要な場合は、他の行をコメントアウトしないことを選択できます。

  3. 以下を追加/挿入しますlogging.properties

    .level = WARNING
    
  4. まだ存在しない場合setenv.shは、フォルダに名前の付いたファイルを作成します。$CATALINA_HOME/bin(どこにあり$CATALINA_HOMEますか?一般的には、出力に文字列または類似のものを/usr/share/tomcat...入力
    ps -ef | grep tomcat
    して探します。)catalina.home

  5. 以下を追加/挿入しますsetenv.sh

    export JAVA_OPTS="${JAVA_OPTS} -Djava.util.logging.config.file=/etc/tomcat.../logging.properties"
    
  6. Tomcatを再起動/etc/init.d/tomcat... restartします(たとえば、OSによって異なります)

tomcat...(実際のバージョンのTomcatと交換してください)

于 2012-12-19T18:57:24.950 に答える
0

最近のバージョンのSolrでここに記述された内容に加えて、低速のクエリログを構成するオプションがあります。これを超えるとクエリが長時間実行されていると見なされ、そのようなクエリが別のログに書き込まれるしきい値を設定します。

これを行うには、ファイルにを追加しslowQueryThresholdMillisますsolrconfig.xml。たとえば、2秒を超えて実行されている各クエリを低速と見なすには、次のように入力しますsolrconfig.xml

<slowQueryThresholdMillis>1000</slowQueryThresholdMillis>
于 2020-03-25T16:19:56.860 に答える