4

JBoss 7.1.1 で HTTP ポスト データをログに記録する方法はありますか?

これを出力するロギング構成で DEBUG に設定したクラスはありますか?

4

1 に答える 1

6

standlone.xmlまたはdomain.xmlファイルのWebサブシステムでhttpアクセスログを構成できます。

次に例を示します。

<subsystem xmlns="urn:jboss:domain:web:1.0" ....>
    <connector name="http" ... />
    <virtual-server name="default-host" enable-welcome-root="true">
        <whatever aliases you may have defined />
        <access-log>
            <directory relative-to="jboss.server.log.dir"/>
        </access-log>
    </virtual-server>
</subsystem>

または、CLIを使用することもできます(推奨-タブコンプリート機能を使用して、使用可能な属性を見つけてください)。

/subsystem=web/virtual-server=default-host/access-log=configuration:add(whatever-attributes-you-want-for-access-log)

以下のOPからのコメントに基づいて更新

HTTPリクエストのコンテンツを追跡する場合は、RequestDumperValveを有効にする必要があります。JBossAS7では、これをグローバルに有効にすることはできません(AS5またはAS6とは異なります)/。展開ごとに有効にする必要があります。WEB-INF\jboss-web.xml次の行をファイルに追加します。

<valve>
        <class-name>org.apache.catalina.valves.RequestDumperValve</class-name>
</valve>

バルブのアクセスログを有効にする必要はありませんserver.log。ファイルに情報が出力されます。RequestDumperValveについて詳しく読むことができます。RequestFilterValveにも興味があるかもしれません。

これらのバルブは通常、デバッグ目的で使用されますが、実稼働環境では使用されません。彼らは非常に冗長なので、それを覚えておいてください。または、 WireSharkFiddlerなどのツールを確認することもできます。さらに深く掘り下げたい場合は、TCPDumpを使用することをお勧めします(注意点-分析は非常に大きく複雑です)。

お役に立てれば!

于 2013-01-04T16:31:01.103 に答える