【TomcatでSolrのログをLog4jで出力する】 TomcatでSolrの運用をしてると、放っておくと、全部catalina.outに ログが出てしまって後からトレースしずらくなります。 少なくともインデクサとそれ以外はログファイルを分けたい。 Solrの WEB-INF/lib の中には slf4jなんちゃらというjarが入っていて、 SLF4J(http://www.slf4j.org/)というライブラリを使っているのが分かります。 何やらLog4Jの次はこいつだ!的な存在らしいのですが、 もう何年も馴染んだlog4j.propertiesで設定したくてしたくてw サクっといかなくてウジウジしていたら↓このブログを見つけました。 http://globalgateway.wordpress.com/2010/01/06/configuring-solr-1-4-logging-with-log4j-in-tomcat/ ドンピシャ。ありがとう。 でも、Thanks!ってコメントを残そうとしたら、 discardedって画面に遷移されちゃった・・・orz 他にもjarファイルのバージョンによっては↓のようなハマりどころもあるようです。 http://www.slf4j.org/faq.html#IllegalAccessError ということで、libの中に slf4j-api-1.5.11.jar、slf4j-log4j12-1.5.11.jar、log4j-1.2.13.jarを突っ込んで、 slf4j-api-1.5.5.jar、slf4j-jdk14-1.5.5.jarを消してあげました。 でもって、WEB-INFのclassesにお馴染みのlog4j.propertiesを置いて完成です。 が、今後、運用とかでSolrのバージョンあげる~とかなったときに、 log4j.properties入れるの忘れたとかありそうで怖いかなぁ。。
Solrをイジった備忘録その2(TomcatでLog4Jでログ出力)
Apache Solr入門 ―オープンソース全文検索エンジン
posted with amazlet at 10.04.16