Solr uruchomiony na tomcacie

 

Osoby, które uruchamiają wyszukiwarkę Apache Solr na serwerze Tomcat, mogą na potkać na problem nadmiernie rosnących logów tomacat-a (catalina.out).

Jeśli nie chcemy się pozbywać informacji płynących z Solr-a. Możemy wybrnąć, z problemu szybko rosnących logów, poprzez przekierowanie logów solr-a do osobnego pliku.
Mechanizmy Tomcat-a pozwalają nam na stworzenie pliku PREFIKS.YYYY-MM-DD.log, jak widzimy w nazwie będziemy mieli prefiks i datę. Jeśli ustawimy „PREFIKS” na „solr.” to codziennie powstanie nam nowy plik z logami.

Konfiguracje dokonujemy w pliku logging.properties znajdującym się w katalogu konfiguracyjnym tomcat-a (w naszym przypadku /etc/tomcat6/).

Na starcie uzupełaniamy „handlers” o:

6localhost.org.apache.juli.FileHandler

Ponieważ oryginalnie, mieliśmy:

handlers = 1catalina.org.apache.juli.FileHandler,
 2localhost.org.apache.juli.FileHandler,
 3manager.org.apache.juli.FileHandler,
 4admin.org.apache.juli.FileHandler,
 5host-manager.org.apache.juli.FileHandler,
 java.util.logging.ConsoleHandler

Handler dla Solr-a bedzie miał numer 6 i po uzupełnieniu otrzymamy:

handlers = 1catalina.org.apache.juli.FileHandler,
 2localhost.org.apache.juli.FileHandler,
 3manager.org.apache.juli.FileHandler,
 4admin.org.apache.juli.FileHandler,
 5host-manager.org.apache.juli.FileHandler,
 6localhost.org.apache.juli.FileHandler,
 java.util.logging.ConsoleHandler

Następnie w sekcji związanej z konfiguracją handler-ów dodajemy wpis:

6localhost.org.apache.juli.FileHandler.level = FINE
6localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
6localhost.org.apache.juli.FileHandler.prefix = solr.

I podpinamy naszego handler-a do Solr-owego loggera:

org.apache.solr.level=INFO
org.apache.solr.handlers=6localhost.org.apache.juli.FileHandler

Ostatnim krokiem jaki musimy wykonać jest restart serwera Tomcat.