私のJavaサーブレットコードでは、プログラムでjettyアクセスログに書き込むことができます。私は、jettyが自動的にすべての着信HTTPリクエストをアクセスログに記録することを認識しています。しかし、私のサーブレットはアクセスログに自分の行を追加する必要があります。誰かがここで何か似たようなことをしていますJetty:アクセスログに書き込む方法
ありがとうございます!
私のJavaサーブレットコードでは、プログラムでjettyアクセスログに書き込むことができます。私は、jettyが自動的にすべての着信HTTPリクエストをアクセスログに記録することを認識しています。しかし、私のサーブレットはアクセスログに自分の行を追加する必要があります。誰かがここで何か似たようなことをしていますJetty:アクセスログに書き込む方法
ありがとうございます!
サブクラスとのconfigure:http://docs.codehaus.org/display/JETTY/Logging+Requests
私はLispnikは正しい軌道に乗っていると思います。 http://docs.codehaus.org/display/JETTY/Logging+Requestsで説明されているNCSARequestLogのハンドルを取得し、log()を呼び出してログメッセージを直接送信したいとします。だからあなたは現在、NCSARequestLogを設定しているコード内の場所を見つけて、それが作成したログにポインタを返すコードの修正版を置き換えたいと思う。
ここで誰かが同じことを探すのであれば、それは桟橋が簡単に行うことのもう1つですが、ドキュメントは貧弱です。とにかく、Jetty 9の場合は、$JETTY_HOME/etc/
〜$JETTY_HOME/etc/jetty.conf
にあるファイルであるjetty-requestlog.xml
を追加するだけで、基本的なリクエストログを取得できます。もちろん、設定を有効にするにはサーバーを再起動する必要があります。ところで
、突堤9で同じことを達成する別の方法は$JETTY_HOME/etc/jetty.xml
に"Handlers"
セクションに(hereから)次の3行を追加することである:終わりに、
<Item>
<New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler"/>
</Item>
とこれらのセクションは、セクションのように見えるように、この012で「桟橋Serverのリクエストログの設定」、である
<Ref id="RequestLog">
<Set name="requestLog">
<New id="RequestLogImpl" class="org.eclipse.jetty.NCSARequestLog">
<Arg><SystemProperty name="jetty.logs" default="./logs"/>/yyyy_mm_dd.request.log</Arg>
<Set name="retainDays">90</Set>
<Set name="append">true</Set>
<Set name="extended">false</Set>
<Set name="LogTimeZone">GMT</Set>
</New>
</Set>
</Ref>
:"Handlers"
セクションで、次のコードを追加します。