web-dev-qa-db-ja.com

Java / Tomcatスタンドアロン、すべてのHTTP GETリクエストを記録/アクセスする方法

Tomcatをスタンドアロンモードで実行しています。 「スタンドアロン」の部分は非常に重要です。Tomcatの前にApacheをインストールする not です。

ここでの私の質問で、「Webバグ」を実装する方法について、私は素晴らしい答えを得ました: Java webapp:Webバグ(1x1ピクセル)を実装する方法?

ただし、答えは次のとおりです。

アクセスログで、jpgをカウントできます-出力は次のようになります。

127.0.0.1--[10/Jun/2010:11:38:53 +0530] "GET /mywebapp/jsp/invisible.jpg?1276150133362 HTTP/1.1" 200 991

しかし、私が恐れていたように、私はそのようなログを見つけることができません。

... $cat Apache-Tomcat-6.0.26/logs/* | grep GET | wc -l

多くのログがあります。私のwebappのカスタムログは間違いなくログに記録されます。

そこで、関連する質問がいくつかあります。

  • 「Tomcatスタンドアロン」はデフォルトですべてのHTTP GETリクエストを記録しますか?

  • はいの場合、すべてのHTTP GET要求はデフォルトでどこに記録されますか? (どうして自分で見つけられたでしょうか?)

  • 「いいえ」の場合、すべてのHTTP GETリクエストを記録するように「Tomcatスタンドアロン」を設定できますか?

私の場合、Webバグ.jspとともにカスタムロギングを追加し、ログでそれを検索できることを知っていることに注意してください。しかし、それはここでの私の質問ではありません。

ここでの私の質問は、Tomcatスタンドアロン(再び、スタンドアロンが非常に重要)がどのようにすべてのHTTP GETリクエストのログを処理するかについてです。

37
NoozNooz42

デフォルトではリクエストを記録しませんが、conf/server.xml

<Valve className="org.Apache.catalina.valves.AccessLogValve"
    directory="logs" prefix="localhost_access_log." suffix=".txt"
    pattern="common" resolveHosts="false"/>
56
Richard Fearn