will and way

ただの自分用メモを人に伝える形式で書くことでわかりやすくまとめてるはずのブログ

slf4jの設定

1. pom.xmlに依存関係追加

<dependency>
	<groupId>org.slf4j</groupId>
	<artifactId>slf4j-api</artifactId>
	<version>1.7.5</version>
</dependency>
<dependency>
	<groupId>org.slf4j</groupId>
	<artifactId>jcl-over-slf4j</artifactId>
	<version>1.7.5</version>
	<scope>runtime</scope>
</dependency>
<dependency>
	<groupId>ch.qos.logback</groupId>
	<artifactId>logback-classic</artifactId>
	<version>1.0.13</version>
	<scope>runtime</scope>
</dependency>

2. logback.xmlを追加

追加する場所はclasspathが通っているディレクト
コピペで初めるSLF4J〜〜〜のをコピって必要に応じて必要な編集をした。

ちょっとした編集

というのも、ログをはくディレクトリとログレベルを環境に応じてかえる必要があるため。
Before

<configuration
    <property name="LoggingDir" value="logs/" />
    <property name="ROOT_LEVEL" value="TRACE" />
    <timestamp key="byDate" datePattern="yyyyMMdd"/>
    ~~~
</configuration>

After

<configuration
    <property name="LoggingDir" value="${logging-dir:-/tmp}" />
    <property name="ROOT_LEVEL" value="${root-level:-info}" />
    ~~~
</configuration>


javaの起動オプションを読み込む設定。無ければ/tmpが設定されるということ。
root-levelの同様に、オプションが無ければinfoとして処理。

3. tomcatのcatalina.shに

$JAVA_OPTS="$JAVA_OPTS -Dlogging-dir=hogehoge"
$JAVA_OPTS="$JAVA_OPTS -Droot-level=info"

と、オプションと追加してあげた。

IDEから起動する際にはrun configurationのVM Optionsのようなところで設定できる。
明日はLayout Patternを試してみようと思う。

ps aux | grep loging-dir | grep root-level | grep -v grep
で、hitすれば問題無し。