JRun では、JRun サーバーと Web サーバーの接続に関するステータス情報が、JRun ログ ファイルに書き込まれます。このステータス情報は JRun サーバーとサードパーティ製 Web サーバーまたは JRun Web サーバー (JWS) の接続から取得できます。
次の図は、サードパーティ製 Web サーバーと JWS の両方に接続されている default JRun サーバーを表しています。
   接続ステータス情報が収集されるように JRun を設定するには、JRun サーバーの local.properties ファイルにあるプロパティ logging.loglevel に指定されたロギング レベルの一覧にキーワード metrics を入れます。JRun のロギング メカニズムの詳細については、第 38 章を参照してください。
たとえば、接続ステータス情報を有効にするには、次のプロパティを使用します。
logging.loglevel=info,warning,error,metrics
次のいずれか、またはすべての接続情報をログ ファイルに書き出すことができます。
listenTh  新しい接続を受信するスレッド
idleTh  新しい要求を待っているスレッドdelayTh  実行を待っているスレッドbusyTh  現在実行しているスレッドtotalTh  ワーカー スレッドの総数delayRq  同時発生が多発していることにより遅延した要求droppedRq  却下された要求handledRq  処理された要求handledMS  遅延時間 (delayMs) を除く、要求のサービスに費やされた時間をミリ秒単位で表したものdelayMs  遅延状態で経過した時間をミリ秒単位で表したものbytesIn  要求から読み込まれたバイト数bytesOut  応答に書き込まれたバイト数freeMemory  ヒープ内の空きメモリ量をキロバイト単位で表したものtotalMemory  使用されているかどうかに関係なく、ヒープ全体のメモリ量をキロバイト単位で表したものsession  現在アクティブなセッション数sessionsInMem  メモリにあるセッション数次に示すのは、接続ステータス情報が記録されたログ メッセージの例です。
03/20 02:57:53 metrics (jcp+web) Heap=3151KB Listen=1 Idle=0 Queued=0
Busy=0 Total=0 Requests (count/total ms)=0/0 Delayed=0 TotalDelay=0 BytesIn=0 BytesOut=0 Sessions (active/in memory)=0/0
監視メカニズムの設定には、プロパティ ファイルを使用します。JRun 管理コンソール (JMC)では制御できません。
   監視メカニズムの既定の設定は JRun のインストールに対応するすべての JRun サーバーに対するもので、global.properties ファイルに保存されています。個々の JRun サーバーの設定を変更する場合は、local.properties ファイルのそのサーバーの設定を変更します。 
   global.properties ファイルでの既定のプロパティ設定は次のとおりです。 
monitor.class=allaire.jrun.metrics.MetricsLogger
monitor.interval=60
monitor.format={monitor.combined-format}
monitor.max.history=10
これらの設定により、監視メカニズム、監視間隔 (単位は秒)、監視情報の出力形式、監視履歴バッファのサイズを定義するクラスが指定されます。これらの設定では、監視メカニズムにより、60 秒ごとに統計が行われ、最新のものからさかのぼって 10 個の監視サンプルが記録されるように指定されています。
これらのプロパティの詳細については、"プロパティの監視"を参照してください。
   global.properties ファイルには、監視メッセージの形式を表すプロパティ monitor.format が含まれています。既定では、monitor.format は次のように設定されています。
monitor.format={monitor.combined-format}
   monitor.combined-format 形式プロパティは、global.properties ファイルで次のように定義されます。
monitor.combined-format=(jcp+web)
  Heap={totalMemory}KB
  Listen={{jcp.listenTh}+{web.listenTh}}
  Idle={{jcp.idleTh}+{web.idleTh}}
  Queued={{jcp.delayTh}+{web.delayTh}}
  Busy={{jcp.busyTh}+{web.busyTh}} 
  Total={{jcp.totalTh}+{jcp.totalTh}}
  Requests={{jcp.handledRq}+{web.handledRq}}
  Delayed={{jcp.delayRq}+{web.delayRq}}
  TotalDelay={{jcp.delayMs}+{web.delayMs}}
  BytesIn={{jcp.bytesIn}+{web.bytesIn}}
  BytesOut={{jcp.bytesOut}+{web.bytesOut}} 
  Sessions (active/in memory)={sessions}/{sessionsInMem}
03/20 02:57:53 metrics (jcp+web) Heap=3151KB Listen=1 Idle=0 Queued=0
Busy=0 Total=0 Requests (count/total ms)=0/0 Delayed=0 TotalDelay=0 BytesIn=0 BytesOut=0 Sessions (active/in memory)=0/0
monitor.<label>=(web | jcp | web+jcp)
  String1={[web.| jcp.]statistic1} 
  String2={[web.| jcp.]statistic2} 
  ...
   monitor.format プロパティに monitor.label を指定して、ログ ファイルに書き込まれる監視情報の形式を制御します。 
形式定義に対してラベルを指定するとともに、この形式指定が JWS (web)、サード
パーティ製 Web サーバー (jcp)、またはこの両方 (web+jcp) のいずれかから得られ
た管理情報に対する形式を定義しているのかどうかを指定します。 
ログ ファイルに書き込まれた監視情報出力に入っている文字列の形式を指定し
ます。メッセージの String= 部分は、変更されることなくそのままログ ファイル
に書き込まれます。JRun により、メッセージの [web.|jcp.]statistic 部分が
統計値で置き換えられます。この統計情報は、JWS (web) への JRun 接続、または
サードパーティ製 Web サーバー (jcp) からの接続から得られたものです。 
ログ ファイルに書き出される接続情報に、次のいずれか、またはすべての統計を
入れることができます。これらの統計の多くには、先頭に jcp または web が付き
ます。これは、この統計がサードパーティ製 Web サーバーから得られたか (jcp)、
または JWS から得られたか (web) を表しています。ただし、一部の統計は JRun 
サーバーと関連付けられた JVM に対するもので、接頭辞は付けられません。 
freeMemory  ヒープ内の空きメモリ量をキロバイト単位で表したもの
totalMemory  使用されているかどうかに関係なく、ヒープ全体のメモリ量をキロバイト単位で表したものsession  現在アクティブなセッション数sessionsInMem  メモリにあるセッション数web.|jcp.]busyTh  現在実行しているスレッドweb.|jcp.]delayTh  実行待ちスレッドweb.|jcp.]idleTh  新しい要求を待っているスレッドweb.|jcp.]listenTh  新しい接続を受信するスレッドの数web.|jcp.]totalTh  ワーカー スレッドの総数web.|jcp.]delayRq  同時発生が多発していることにより遅延した要求の数web.|jcp.]droppedRq  却下された要求web.|jcp.]handledRq  処理された要求web.|jcp.]handledMS  遅延時間 (delayMs) を除く、要求のサービスに費やされた時間をミリ秒単位で表したものweb.|jcp.]delayMs  遅延状態で経過した時間をミリ秒単位で表したものweb.|jcp.]bytesIn  要求から読み込まれたバイト数web.|jcp.]bytesOut  応答に書き込まれたバイト数monitor.combined-format=(jcp+web)
  Heap={totalMemory}KB
  Total={{jcp.totalTh}+{web.totalTh}}
この定義は、このメッセージ形式が、JWS とサードパーティ製 Web サーバーの両方から得られた情報に適用されることを表しています。この監視メッセージには、ヒープ メモリの量、および JWS とサードパーティ製 Web サーバーの両方で使用されているワーカー スレッドの数を合計したものが含まれます。
JWS とサードパーティ製 Web サーバーの両方で使用されているワーカー スレッド数の合計を表示するには、次の形式で指定します。
Total={{jcp.totalTh}+{web.totalTh}}
上記のとおり、表示される値は JWS から得られた値と、サードパーティ製 Web サーバーから得られた値の合計です。数式を中かっこ {} で囲むことにより、統計値に対する計算ができることが、この例からわかります。
   JRun の global.properties ファイルには、次のような定義済み形式が用意されています。このような定義済み形式の 1 つを monitor.format プロパティに指定できます。また、ユーザが形式を作成することもできます。 
# JWS とサードパーティ製 Web サーバーの両方から得られた監視情報で
# 使用されるメッセージ形式を定義します。 
# これは既定の監視形式です。
monitor.combined-format=(jcp+web)
  Heap={totalMemory}KB 
  Listen={{jcp.listenTh}+{web.listenTh}} 
  Idle={{jcp.idleTh}+{web.idleTh}} 
  Queued={{jcp.delayTh}+{web.delayTh}} 
  Busy={{jcp.busyTh}+{web.busyTh}} 
  Total={{jcp.totalTh}+{web.totalTh}} 
  Requests (count/total ms)={{jcp.handledRq}+{web.handledRq}}/
{{jcp.handledMs}+{web.handledMs}} 
  Delayed={{jcp.delayRq}+{web.delayRq}} 
  TotalDelay={{jcp.delayMs}+{web.delayMs}} 
  BytesIn={{jcp.bytesIn}+{web.bytesIn}} 
  BytesOut={{jcp.bytesOut}+{web.bytesOut}} 
  Sessions (active/in memory)={sessions}/{sessionsInMem}
# JWS だけから得られる監視情報のメッセージ形式を定義します。
monitor.web-format=(web) 
  Heap={totalMemory}KB 
  Listen={web.listenTh}
  Idle={web.idleTh} 
  Queued={web.delayTh} 
  Busy={web.busyTh} 
  Total={web.totalTh} 
  Requests (count/total ms)={web.handledRq}/{web.handledMs} 
  Delayed={web.delayRq} 
  TotalDelay={web.delayMs} 
  BytesIn={web.bytesIn} 
  BytesOut={web.bytesOut} 
  Sessions (active/in memory)={sessions}/{sessionsInMem} 
# JWS だけから得られる情報のショート メッセージ形式を定義します。
monitor.web-short-format=(web) 
  Busy={web.busyTh} 
  Total={web.totalTh} 
  Requests={web.handledRq} 
  TotalDelay={web.delayMs}
# サードパーティ製 Web サーバーだけから得られた監視情報で使用される
# メッセージ形式を定義します。
monitor.jcp-format=(jcp) 
  Heap={totalMemory}KB 
  Listen={jcp.listenTh} 
  Idle={jcp.idleTh} 
  Queued={jcp.delayTh} 
  Busy={jcp.busyTh} 
  Total={jcp.totalTh} 
  Requests (count/total ms)={jcp.handledRq}/{jcp.handledMs} 
  Delayed={jcp.delayRq} 
  TotalDelay={jcp.delayMs} 
  BytesIn={jcp.bytesIn} 
  BytesOut={jcp.bytesOut} 
  Sessions (active/in memory)={sessions}/{sessionsInMem}
# サードパーティ製 Web サーバーだけから得られた監視情報で使用されるショート
# メッセージ形式を定義します。
monitor.jcp-short-format=(jcp) 
  Busy={jcp.busyTh} 
  Total={jcp.totalTh} 
  Requests={jcp.handledRq} 
  TotalDelay={jcp.delayMs}