1. 程式人生 > >solr的日誌設定

solr的日誌設定

solr日誌配置

Using Logback

Here are some details for implementing logback (http://logback.qos.ch/). As you may know, Logback is from the same author as Log4j. It has several enhancements including Filters and Custom Appenders.

Note: $ORIG is your top level directory for Solr.

# cd $ORIG
# tar xzvf apache-solr-3.5.0.tgz

2. Copy the solr.war file to a new location

# mkdir -p /tmp/solr
# cd ./example/webapps
# cp solr.war /tmp/solr
# cd /tmp/solr
# jar xvf solr.war
# rm -f solr.war

3. Remove the slf4j-jdk14-1.6.1.jar file

# cd /tmp/solr
# rm -f ./WEB-INF/lib/slf4j-jdk14-1.6.1.jar

4. Copy logback classic files

# tar xzvf logback-1.0.1.tar.gz
# cd logback-1.0.1
# cp logback-classic-1.0.1.jar /tmp/solr/WEB-INF/lib
# cp logback-core-1.0.1.jar /tmp/solr/WEB-INF/lib

Note: If you wanted to upgrade SLF4J from 1.6.1 to 1.6.4 you would do the following...

a. Get the SLF4J from http://www.slf4j.org/dist/slf4j-1.6.4.tar.gz 
b. Extract the tar into a temporary directory 
c. delete the old versions:

# rm /tmp/solr/WEB-INF/lib/jcl-over-slf4j-1.6.1.jar
# rm /tmp/solr/WEB-INF/lib/log4j-over-slf4j-1.6.1.jar
# rm /tmp/solr/WEB-INF/lib/slf4j-api-1.6.1.jar

d. Copy the new ones

# cp jcl-over-slf4j-1.6.4.jar /tmp/solr/WEB-INF/lib
# cp log4j-over-slf4j-1.6.4.jar /tmp/solr/WEB-INF/lib
# cp slf4j-api-1.6.4.jar /tmp/solr/WEB-INF/lib

5. Rebuild the war

# cd /tmp/solr
# jar cvf solr.war *

6. Copy the war back to your example/webapps directory

# cp solr.war $ORIG/apache-solr-3.5.0/example/webapps

7. Create resources/logback.xml file

# cd $ORIG/apache-solr-3.5.0/example
# mkdir resources

copy logback.xml into this directory.

8. Restart Solr 3.5

Example logback.xml.

<configuration debug="true">
  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file>/var/log/solr.log</file>
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>
  <logger name="org.apache.solr.handler.dataimport.DocBuilder.level" level="SEVERE" additivity="false">
    <appender-ref ref="FILE" />
  </logger>
  <logger name="org.apache.solr.handler.dataimport.ThreadedEntityProcessorWrapper.level" level="SEVERE" additivity="false">
    <appender-ref ref="FILE" />
  </logger>
  <logger name="org.apache.solr.core.SolrCore" level="INFO" additivity="false">
        <appender-ref ref="FILE" />
  </logger>
  <logger name="org.apache.solr" level="INFO" additivity="false">
    <appender-ref ref="FILE" />
  </logger>
  <root level="OFF">
    <appender-ref ref="STDOUT" />
  </root>
</configuration>