2016-10-04 18 views
1

私はSpring RESTサービスを持っていますが、RESTサービスをリクエストするとHTTP 401が発生することがあります。この問題を調査するつもりです。常に起こる(これは毎回同じリクエストです)。私はまた、RESTのドキュメントを提供するために統合されています。 私は、要求が認証されていない要求であったとしても、私は着信と発信HTTP要求を記録することができますどのようにTomcat 7Spring/Tomcatで送受信されるHTTP RESTリクエスト/レスポンスのログ

  1. にWebアプリケーションとしての私の春のRESTサービスを展開しています。私はすべての着信要求とそれに対応する発信応答を結びつけたいと思っています。これは私がプロダクションアプリケーションにも展開したいものです。

  2. SpringでのRESTサービスのロギングに関して、私が採用しているベストプラクティスは、SpringやTomcatでより良いログと調査を提供できる機能は何ですか?

おかげ

+0

Springには、これを行うためのデフォルトのフィルタがあります。http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/filter/CommonsRequestLoggingFilter.htmlを参照してください。集中的なロギング/トレースを行うために、https://cloud.spring.io/spring-cloud-sleuth/のようなものをもっと使いたい場合。 –

答えて

1

は、おそらくこれを行うための最善の方法は、カスタムjavax.servlet.Filterと組み合わせてLogging frameworkを使用することです。アプリケーションで使用する他の環境(例えば、Spring MVCやStruts)とは別に、すべてのHTTP要求/応答をトレースできます。

それ以外の場合は、いくつかのコンポーネントに依存し、あるか、全く破壊することができるよう、実際の低レベルのイベントを反映していない、ので、この場合には、ロギングは、アプリケーションの他の の部分とは別に働かなければならないということは重要なことです。

Logbackを使用することをお勧めします。Logbackには、必要な機能を実行できるコンポーネントがあります。以下のように見えるかもしれあなたのWEBアプリケーションのLogback構成で

は次のとおりです。

<filter> 
    <filter-name>TeeFilter</filter-name> 
    <filter-class>ch.qos.logback.access.servlet.TeeFilter</filter-class> 
</filter> 

<filter-mapping> 
    <filter-name>TeeFilter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

詳細はLogback documentationで見つけることができます

のweb.xml。

関連する問題