Interstage HTTP Server 2.4では、アクセス数、転送量、通信スレッドの状態など、Webサーバに関するさまざまな動作状態を表示して確認できます。
注意
サーバステータスの監視機能を運用する場合、Webサーバの動作が遅くなることがあります。
表示内容、設定方法、および運用手順について、以下に示します。
■表示内容
サーバステータスの監視機能では、以下の項目の動作状態を表示します。
Webサーバ全体の動作状態
Webサーバ全体の動作状態が、西暦年「yyyy」の場合、以下の例のように表示されます。
例
Current Time: Thursday, 18-Jan-yyyy 18:06:08 JST Restart Time: Thursday, 18-Jan-yyyy 18:05:17 JST Parent Server Generation: 0 Server uptime: 51 seconds Total accesses: 4 - Total Traffic: 10 kB CPU Usage: u.01 s.05 cu0 cs0 - .118% CPU load .0784 requests/sec - 200 B/second - 2560 B/request 1 requests currently being processed, 5 idle workers
上記で表示された各項目の意味を以下に示します。
項目名 | 意味 | 備考 | |
---|---|---|---|
Server Version | Interstage HTTP Server 2.4のサーババージョン | ||
Server Built | Interstage HTTP Server 2.4のコンパイル日時 | ||
Current Time | 現在の日時 | ||
Restart Time | 起動日時 | ||
Parent Server Generation | 再起動回数 | ||
Server uptime | 連続稼働時間 | ||
Total accesses | 起動時からの総アクセス数 | (注) | |
Total Traffic | 総転送量 | (注) | |
| u | 通信プロセスが消費したCPU時間(秒) | (注) |
s | 通信プロセスによりシステムが消費したCPU時間(秒) | (注) | |
cu | CGIアクセスにおいて生成した子プロセスが消費したCPU時間(秒) | (注) | |
cs | CGIアクセスにおいて生成した子プロセスによりシステムが消費したCPU時間(秒) | (注) | |
| CPU使用率(%) | (注) | |
requests/sec | 平均毎秒リクエスト数 | (注) | |
B/second | 平均毎秒転送量 | (注) | |
B/request | リクエストあたりの転送量 | (注) | |
requests currently being processed | 処理中のリクエスト数 | ||
idle workers | 待機中の通信スレッド数 |
注)サーバステータス情報の拡張表示を行う場合(環境定義ファイル(httpd.conf)のExtendedStatusディレクティブの設定値が「On」の場合)に表示されます。
通信スレッドの状態一覧
Webサーバが生成した通信スレッドの状態一覧が、以下のように、通信スレッドの番号(Srv)の順でキーごとに1つずつ表示されます。この表示をスコアボードと呼びます。
例
_____W.......................................................... ................................................................ ................................................................ ................................................................ Scoreboard Key: "_" Waiting for Connection. "S" Starting up. "R" Reading Request. "W" Sending Reply. "K" Keepalive (read). "D" DNS Lookup. "C" Closing connection. "L" Logging. "G" Gracefully finishing. "I" Idle cleanup of worker. "." Open slot with no current process
上記の例の場合は、通信スレッドが以下の状態であることを意味します。
1つ目から5つ目までの通信スレッド:待機中
6つ目の通信スレッド:応答中
7つ目以降の通信スレッド:未起動
通信スレッドの状態を示すスコアボードのキーとその意味を以下に示します。
スコアボードのキー | 意味 |
---|---|
"_" Waiting for Connection | 待機中 |
| 通信スレッドの生成中 |
"R" Reading Request | リクエストの読込み中 |
"W" Sending Reply | リクエストの応答中 |
"K" Keepalive (read) | Keep-Alive接続中 |
"D" DNS Lookup | DNSでホスト名を検索中 |
"C" Closing connection | コネクションクローズ中 |
"L" Logging | ログファイルの書込み中 |
"G" Gracefully finishing | 未起動 |
"I" Idle cleanup of worker | - (注) |
"." Open slot with no current process | 未起動 |
注)Interstage HTTP Server 2.4では、サポートしていないため、無効です。
通信スレッドごとの動作状態
通信スレッドごとの動作状態が以下のように表示されます。
例
Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request 0-0 686 0/3/3 _ 0.04 10 1 0.0 0.01 0.01 192.168.1.1 httpserver GET /server-status HTTP/1.1 5-0 691 1/1/1 W 0.02 0 1 2.8 0.00 0.00 192.168.1.2 httpserver GET /server-status HTTP/1.1
上記で表示された各項目の意味を以下に示します。
項目名 | 意味 | 備考 | |
---|---|---|---|
Srv (Child Server number - generation) | 通信スレッドの番号 - 再起動した回数 | (注) | |
PID (OS process ID) | 通信プロセスのプロセスID | ||
Acc (Number of accesses this connection / this child / this slot) | Number of accesses this connection | 同一コネクション内でのアクセス数 | (注) |
this child | 通信スレッドあたりの総アクセス数 | ||
this slot | 通信スレッドあたりの総アクセス数 | ||
M (Mode of operation) | 通信スレッドの状態 (「通信スレッドの状態一覧」を参照) | ||
| CPU消費時間(秒) | (注) | |
SS (Seconds since beginning of most recent request) | 最新リクエストからの経過時間(秒) | (注) | |
Req (Milliseconds required to process most recent request) | 最新リクエストの処理時間(ミリ秒) | (注) | |
Conn (Kilobytes transferred this connection) | 同一コネクション内での転送量(Kバイト) | (注) | |
Child (Megabytes transferred this child) | 通信スレッドあたりの総転送量(Mバイト) | (注) | |
Slot (Total megabytes transferred this slot) | 通信スレッドあたりの総転送量(Mバイト) | (注) | |
Client | クライアントまたはプロキシサーバなどのIPアドレス | (注) | |
VHost | 最新リクエストを受け付けたWebサーバのホスト名 | (注) | |
Request | 最新リクエストの内容 | (注) |
注)サーバステータス情報の拡張表示を行う場合(環境定義ファイル(httpd.conf)のExtendedStatusディレクティブの設定値が「On」の場合)に表示されます。
■設定方法
サーバステータスの監視機能は、環境定義ファイル(httpd.conf)で設定します。
サーバステータスの監視機能の設定方法については、「3.15 サーバステータス監視の設定」を参照してください。
注意
サーバステータス監視機能を運用する場合、ネットワーク上の悪意のある人(またはマシン)がそのサーバステータスをのぞき見る脅威があります。この脅威に備え、以下を設定することをお勧めします。
以下の機能を併用して設定し、特定のアクセスだけを許可します。
ユーザ認証の設定
特定の管理者からのアクセスだけに対して、サーバステータス情報を表示します。
IPアクセスコントロールの設定
特定のクライアントからのアクセスだけに対して、サーバのステータス情報を表示します。
<Location>セクションのURLを複雑化して設定します。
サーバステータス監視機能で<Location>セクションを設定する場合、URLには一般的に「server-status」という文字列が使用されます。このため、URLに「server-status」という文字列を設定すると、サーバステータス情報が安易に表示される可能性があります。URLには「server-status」以外の文字列を設定してください。
■運用手順
サーバステータスの監視機能を運用する場合、クライアントからWebブラウザで任意のURLにアクセスすることにより、上記の表示内容の動作状態を表示します。
URLの形式
http://ホスト名:ポート番号/パス
Webサーバのホスト名またはIPアドレス。
ポート番号。ホストのポート番号が「80」の場合は、省略可(省略時、コロン(:)は不要)。
環境定義ファイル(httpd.conf)の<Location>セクションで設定したURL。
ポイント
URLの末尾に「?auto」を指定すると、簡略化したステータスを表示できます。
URLの末尾に「?refresh=N」(N:秒数)を指定すると、指定した秒数ごとにステータスの表示を更新できます。なお、「?refresh」を指定した場合は、10秒となります。
例
Webブラウザ(クライアント)でWebサーバのIPアドレス「192.168.1.1」と<Location>セクションに指定したURL「/server-status」を指定して、サーバステータス情報(バージョン「x.x.xx」、OS「WinXX」、西暦年「yyyy」)を表示する場合
Webブラウザ(クライアント)でWebサーバのIPアドレス「192.168.1.1」と<Location>セクションに指定したURL「/server-status」を指定して、サーバステータス情報(バージョン「x.x.xx」、西暦年「yyyy」)を表示する場合