2017-01-16 19 views
1

遅いクエリをすべて別のファイルに記録しようとしています。今まで私は、次のTomcatのコンテキストコンフィギュレーションする必要があります。tomcat jdbc SlowQueryReportインターセプタ - 別のファイルにログイン

<Resource name="jdbc/paymentDB" auth="Container" type="org.apache.tomcat.jdbc.pool.DataSource" 
driverClassName="...oracle..." 
... 
jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.QueryTimeoutInterceptor(queryTimeout=2);org.apache.tomcat.jdbc.pool.interceptor.SlowQueryReport(threshold=1000,maxQueries=200)" 
</Context> 

これがある限り、私は別の種類のロガーを設定しないと、それはコンソールに出力して動作します。私が追加しなければならないことの1つは、デフォルトのIDE設定を使用してIntelliJ Ideaでこのテストを実行することです。

私がやりたかったのは、別のファイルにログインすることでした。だから私は、次の変更をlogging.propertiesを開けました:

handlers = ..., 5slowqueries.org.apache.juli.FileHandler, ... 
.handlers =..., 5slowqueries.org.apache.juli.FileHandler, ... 

5slowqueries.org.apache.juli.FileHandler.level = ALL 
5slowqueries.org.apache.juli.FileHandler.directory = ${catalina.base}/logs 
5slowqueries.org.apache.juli.FileHandler.prefix = slow-queries. 

org.apache.tomcat.jdbc.pool.interceptor.SlowQueryReport.level = ALL 
org.apache.tomcat.jdbc.pool.interceptor.SlowQueryReport.handlers = 5slowqueries.org.apache.juli.FileHandler 

問題は同じ遅いクエリを実行すると、この設定を使用して、以前のコンソールで、この時間を印刷してきた、何slow-queries.*ファイルが作成されないということです。

私はこの作業を行う方法を見つけ出すことはできません(私はIntelliJのアイデアからこれを実行しました)。多分それはIDEと関係がありますか?私はIDEAがRun/Debug Configurationsにログカテゴリを持っていることに気付きました。私はこれらのオプションで遊んだりしようとしましたが、幸運はありませんでした。

答えて

1

問題が見つかりました。それはIDEだった。 IDEAは、サーバを起動すると、コンソールに次のようなものを出力します。

Using CATALINA_BASE: "C:\Users\..." 
Using CATALINA_HOME: "C:\..." 
another few variables 

ログはCATALINA_BASE /ログに、変更されていない場合、デフォルトでは、作成されます。

関連する問題