WebLogic10のaccess.logでレスポンスタイムを計測する。

負荷テスト等でサーバの処理時間を知りたい場合のメモ。

Administration Consoleにて [環境]-[サーバ]-[ロギング]-[HTTP]-[詳細]

  • [フォーマット]:[拡張]
  • フォーマットのフィールド:[date time sc-status c-ip time-taken cs-method cs-uri]
    • time-taken:リクエスト-レスポンスタイムでかかった処理時間
    • c-ip:リクエストしたクライアントを特定するためにIPも記録する。

変更を保存するのを忘れないように。

前のバージョンではログファイルバッファを指定する項目があったみたいだが10ではなくなっているようだ。デフォルトの値は8KBとなっていてある程度リクエストが溜まらないと出力されない。リクエスト毎に確認できないとテスト時に困るので逐次出力するように変更する。 Administration Consoleからは変更できないので、domain/config.xmlを変更する。先ほどのフォーマット変更分があるはずなのでそこへ。
config.xml

…
<web-server>
    <web-server-log>
        <elf-fields>date time sc-status c-ip time-taken cs-method cs-uri</elf-fields>
        <log-file-format>extended</log-file-format>
    </web-server-log>
</web-server>
…

0』を追加してやりバッファの利用をしないようにする。





0
date time sc-status c-ip time-taken cs-method cs-uri
extended


サーバを再起動すると logs/access.log が逐次更新されるようになる。

※リクエストの多い環境(運用環境)ではログ出力によるファイルIOによりパフォーマンスが劣化する可能性がある。テストのみにしましょう。