ページの先頭行へ戻る
Interstage Application Server 運用ガイド
Interstage

3.6.2 アプリケーション実行基盤のログ

アプリケーション実行基盤によって以下のログが採取されます。


表3.8 アプリケーション実行基盤のログ

ログ

ファイル名

用途

サーバーログ

server.log

アプリケーション実行基盤が出力する情報や、配備したアプリケーションの標準出力、標準エラー出力に出力した情報です。

HTTPアクセスログ

server_access_log

Webサーバとサーバーインスタンス間の通信情報(リクエスト情報とレスポンス情報)が出力されます。



サーバーログ
ファイル名

server.log

出力内容

アプリケーション実行基盤が出力する情報や、配備したアプリケーションの標準出力、エラー出力に出力した情報が出力されます。

仕様

アプリケーション実行基盤、およびアプリケーションによるロガーでの出力、および標準出力・標準エラー出力への出力は、以下の処理によりサーバーログと同じファイルに出力されます。

  • ロガーの初期処理によって、domain.xmlの定義情報が取り込まれ、出力先がサーバーログに切り替わります。

  • 標準出力、標準エラー出力は、ハンドラにより出力先がサーバーログに切り替えられます。

出力フォーマット

サーバーログは以下のフォーマットで出力されます。

[#|日時|ログレベル|プロダクトID|ロガー名|スレッド情報|メソッド情報|レコード番号|メッセージ|#]

ログレベル

  • ERROR:エラー

  • WARNING:警告

  • INFO:情報

出力例
[#|2010-10-22T18:26:27.177+0900|INFO| glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=15;
_ThreadName=Thread-1;| | | WEB0169: Created HTTP listener [http-listener-1] on host/port 
[0.0.0.0:8080]|#]


HTTPアクセスログ
ファイル名

server_access_log

出力内容

ロードバランサーとアプリケーション実行基盤間の通信情報(リクエスト情報とレスポンス情報)が記録されます。

仕様
  • HTTPアクセスログを出力する設定をした時に、HTTPアクセスログファイルが作成されます。

  • リクエストラインに出力される値はクライアントから送付された値がそのまま出力されます。そのため、リクエストURLに%エンコードされた文字を含む場合はデコードされずにクライアントから送付された値がそのまま出力されます。

出力フォーマット

HTTPアクセスログは以下のフォーマットで出力されます。

"クライアントのIPアドレス" "-" "認証ユーザ名" "日時" "リクエストライン" "ステータスコード" 
"レスポンス長" "Hostヘッダの内容" "セッションID" "処理時間" "スレッドID" "スレッド名" "-"
出力例

出力フォーマットに指定した値が空白で区切られて出力されます。

"127.0.0.1" "-" "-" "16/Jun/2011:14:18:55 +0900" "GET /sample/sample.html HTTP/1.1" 
"200" "1494" "localhost:8080" "6e2a7289be9600cf82a7218fa2c1" "0" "ThreadID=67" 
"ThreadName=http-thread-pool-8080(1)" "-"


ログのローテーション

ログファイルはファイルサイズでローテーションされます。ログ出力がファイルサイズを超えた場合、ローテーションが実行された時刻が付加された名前で保存されます。ローテーション時のファイル名、ファイルサイズ、保存される世代数は以下の通りです。

表3.9 ログのローテーション

ログ

ローテーション時のファイル名

ファイルサイズ

世代数

サーバーログ

server.log_yyyy-MM-ddThh-mm-ss

1MB

9

HTTPアクセスログ

server_access_log_yyyy_MM_dd-hh_mm_ss.通し番号

“.通し番号”は、0から始まる番号。前回のローテーションから1秒以内にローテーションが実行された場合に付加。

1MB

9


注意

  • Windows Azureストレージにおいてカスタムエラーログが使用する容量の最大値は、サーバーログ、HTTPアクセスログそれぞれにつき、おおよそ以下の計算式で求めることができます。

    1MB × 9(世代) × 1(分) × 60 × 24(時間) ×7(日) × インスタンス数
  • 以下は同じスレッドを表しているため、対応付けて調査することができます。

    • HTTPアクセスログのThreadID

    • サーバーログのスレッド情報内のThreadID

    例:

    サーバーログ

    "127.0.0.1" "-" "-" "29/Jun/2011:11:19:38 +0000" "GET /sample/ HTTP/1.1" "200" "0" "localhost" "-" "219"
     "ThreadID=104" "ThreadName=http-thread-pool-8080(3)" "-"

    HTTPアクセスログ

    [#|2011-06-29T11:19:38.709+0000|INFO|glassfish3.1|
    javax.enterprise.system.std.com.sun.enterprise.server.logging|
    _ThreadID=104;_ThreadName=Thread-1;|This is log output from sample web application.|#]
  • サーバーログ、HTTPアクセスログのフォーマットは変更される可能性があります。