第 3 章 カスタム ロギング機能
カスタム ロギングは、Helix Universal Proxy のレジストリ関連の情報収集をサポートするロギングおよびモニタリング機能を強化した機能です。開発者は監視するレジストリ変数を指定して、カスタム ロギング テンプレートを使用して出力形式を指示できます。プロキシ設定ファイルには複数のテンプレートを同時に指定できます。それぞれのテンプレートからは、標準エラー出力、TCP または UDP ソケット、またはほかのプログラムへのパイプなど、複数の出力先に監視結果を出力できます。
Helix Universal Proxy の機能を監視するタイミングおよび生成する出力を指定するには、以下に示すテンプレート タイプを使用します。
- Interval (インターバル)インターバル テンプレートをセット アップすると、Helix Administrator によって一定時間で Helix Universal Proxy のレジストリ変数の設定が記録されます。また、ログを出力する時間間隔を時、分、秒の単位で定義できます。「出力間隔」のセクションを参照してください。
- Periodic / Watched Variables (定期/監視対象変数)すべてのレジストリ変数が監視対象となり、定義した定期的、最大時間内、または最大時間経過後のいずれかの間隔に従って出力が生成されます。また、監視対象の変数が変化するたびに、定義した出力間隔に従って出力が生成されます。詳細については、「監視対象およびワイルドカード変数」および「出力間隔」の各セクションを参照してください。
- ワイルドカード/ワイルドカード変数ワイルドカードで表されるレジストリ変数の変化だけが監視されます。ロギング情報は変数が変化したときにだけ出力され、定期出力間隔は無視されます。詳細については、「監視対象およびワイルドカード変数」のセクションを参照してください。
各テンプレートを使用して出力を生成するには、以下の手順に従ってください。
- 出力形式を決定します (「整形文字列」のセクションを参照)。
- 出力の配信方法を選択します (「出力タイプ」のセクションを参照)。
依存関係
カスタム ロギング機能は、Helix Universal Proxy の情報を監視するためのオプションです。この機能は、ほかのリストやプロキシ設定ファイルの変数には一切依存していません。ただし、クライアント統計情報のカスタム ロギングを実行するには、特定の変数を定義する必要があります。詳細については、「相互依存関係」のセクションを参照してください。
相互依存関係
Helix Universal Proxy 9 では、クライアント統計情報を、クライアントが切断するときだけでなく、一定時間で送信することもできます。StatsInterval レジストリ変数が 0 より大きな値に設定されている場合、クライアント統計情報を定期的に収集する機能が有効になります。StatsInterval の値は、クライアント統計情報を Helix Universal Proxy に送信する時間間隔を表します。
StatsInterval が 0 より大きく、LoggingStyle が 1 から 5 までの場合、カスタム ロギング機能を使用してクライアント統計情報を収集できます。ロギング テンプレートでワイルドカード監視対象変数 「変数: WatchRoot」を Client.*.Session.*.LogStats のように設定すると、接続しているすべてのクライアントの統計情報をリアルタイムに監視できます。クライアント統計情報の監視の詳細については、『Helix Universal Proxy アドミニストレーション ガイド』を参照してください。
サンプル
Helix Universal Proxy 設定ファイルには、現在 Helix Universal Proxy にロードされているすべての使用可能なテンプレートが含まれています。これらのロギング テンプレートにはそれぞれ独自の情報収集方法、出力指示、および出力先が指定されています。設定ファイルには複数のテンプレートを記述でき、同時に複数のロギングを有効にできるので、複数のロギング セッションを同時にアクティブにできます。
次の例に、設定ファイルにテンプレートを記述する方法を示します。
<!-- CUSTOM LOGGING TEMPLATES --> <LIST Name="LoggingTemplates"> <!-- LOGGING TEMPLATE 1 --> <LIST Name="Periodic Logging to Standard Out"> ...other variables that define logging session 1... </LIST> <!-- LOGGING TEMPLATE 2 -->
<LIST Name="Periodic Logging Using Size Based Log Rolling">
...other variables that define logging session 2... </LIST> <!-- LOGGING TEMPLATE 3 -->
<LIST Name="Periodic Logging of Load State Through TCP">
...other variables that define logging session 3... </LIST> <!-- LOGGING TEMPLATE 4 -->
<LIST Name="Wildcard Logging to UDP MultiCast Socket">
...other variables that define logging session 4... </LIST> </LIST>
|
各ロギング セッションの詳細については、以下のセクションで説明します。
標準出力に出力する定期ロギング
ロギング セッション 1 は、レジストリ変数の値が変化したかどうかに関係なく、5 秒おきに標準出力に出力します。
サンプル
<!-- LOGGING TEMPLATE 1 --> <LIST Name="Periodic Logging to Standard Out"> <VAR Description="Periodically sends logging output (every 5 seconds) to standard out, containing the current number of RTSP clients, PNA clients, HTTP clients and total connected clients."/> <VAR Enabled="1"/> <VAR Format="RTSP Clients = %Server.RTSPClientCount%, PNA Clients = %Server.PNAClientCount%, HTTP Clients = %Server.HTTPClientCount%, Total Clients = %Server.ClientCount%\r\n"/> <VAR Interval="00:00:05"/> <LIST Name = "Outputs"> <LIST Name="Direct Output to Standard Out"> <VAR Type="StdOut"/> </LIST> </LIST> </LIST>
|
出力
次の内容が標準出力に出力されます。
RTSP Clients = 5, PNA Clients = 10, HTTP Clients = 100, Total Clients = 115
|
RTSP Clients = 5, PNA Clients = 12, HTTP Clients = 83, Total Clients = 100
|
RTSP Clients = 4, PNA Clients = 9, HTTP Clients = 77, Total Clients = 90
|
サイズ ベースのログのローリングを使用した定期ロギング
ロギング セッション 2 は、レジストリ変数の値が変化したかどうかに関係なく、少なくとも 30 分おきにローカル ファイルに出力します。同時にローカル ファイルのサイズが監視され、5 MB に達した時点でロギング情報の出力先は新しいログ ファイルに移行します。ログ ファイル名はすべて、テンプレートで指定されたテキストおよび Helix Universal Proxy から取得した日時情報から構成されます。日時情報は、年、月、日、時、分、秒 (yyyymmddhhmmss) の形式で追加されます。
サンプル
<!-- LOGGING TEMPLATE 2 --> <LIST Name="Periodic Logging Using Size Based Log Rolling"> <VAR Description="Periodically outputs (at least every 30 minutes a string to a local file, containing the current date, time, bandwidth usage, memory usage, and % of CPU utilized by the Helix Universal Proxy processes. Log is rolled whenever it's > 5 MB."/> <VAR Enabled="1"/> <VAR Format="Server Resources at %Time%\r \t Bandwidth = %Server.BandwidthOutput% bps\r \t Memory Usage = %Server.BytesMemoryUsage% bytes\r \t CPU Percentage = %Server.PercentCPUUsage%\r\n"/> <!-- Report the Log at least every 30 minutes --> <VAR MaxInterval="00:30:00"/> <LIST Name = "Outputs"> <LIST Name="Size Rolled Local File Ouput"> <VAR Type="File"/> <VAR Filename="Resources.log"/> <VAR LogRollSize="5"/> </LIST> </LIST> </LIST>
|
出力
Contents of local file, Resources.log.2001219103246:
|
Server Resources at 10:30:00 Bandwidth = 45367 bps Memory Usage = 19876394 bytes CPU Percentage = 34
|
Server Resources at 11:00:00 Bandwidth = 28744 bps Memory Usage = 5443152 bytes CPU Percentage = 17
|
Server Resources at 11:30:00 Bandwidth = 111734 bps Memory Usage = 28652788 bytes CPU Percentage = 46
|
TCP 経由のロード状態の定期ロギング
ロギング セッション 3 は、監視対象の変数 Server.LoadState が変化するたびに、ローカル ファイルへの出力および TCP ソケット経由で出力先マシンへの出力を行います。出力間隔変数は指定されていないので、出力が生成されるのは LoadState 変数が変化したときだけです。
サンプル
<!-- LOGGING TEMPLATE 3 --> <LIST Name="Periodic Logging of Load State Through TCP"> <VAR Description="Outputs when LoadState watched variable changes. Outputs a string to a local file and to a machine via a TCP socket, containing the current load state, bandwidth usage, memory usage, and % of CPU utilized by the Helix Universal Proxy processes."/> <VAR Enabled="1"/> <VAR Format="Load State = %Server.LoadState% \r Bandwidth = %Server.BandwidthOutput% bps \r Memory Usage = %Server.BytesMemoryUsage% bytes \r CPU Percentage = %Server.PercentCPUUsage%\r\n"/> <LIST Name = "Watches"> <VAR LoadState="Server.LoadState"/> </LIST> <LIST Name = "Outputs"> <LIST Name="Local File Output"> <VAR Type="File"/> <VAR Filename="LoadState.log"/> </LIST> <LIST Name="TCP Socket Output"> <VAR Type="TCP"/> <VAR Dest="statscollection.real.com"/> <VAR Port="3737"/> </LIST> </LIST> </LIST>
|
出力
Contents of local file, LoadState.log, and the information sent to the destination machine through the TCP socket:
|
Load State = normal Bandwidth = 45367 bps Memory Usage = 19876394 bytes CPU Percentage = 54
|
Load State = low Bandwidth = 28744 bps Memory Usage = 5443152 bytes CPU Percentage = 17
|
Load State = normal Bandwidth = 111734 bps Memory Usage = 28652788 bytes CPU Percentage = 46
|
UDP マルチキャスト ソケットへのワイルドカード ロギング
ロギング セッション 4 は、Client.* で指定された WatchRoot 以下のレジストリに存在するすべての変数を監視します。Add/Mod/DelFormat 文字列変数を定義することによって、監視対象のワイルドカード変数がレジストリで追加、削除、または変更されるたびに出力が行われます。ワイルドカード変数が変化しなければ、何も出力されません。
サンプル
<!-- LOGGING TEMPLATE 4 --> <LIST Name="Wildcard Logging to UDP MultiCast Socket"> <VAR Description="Outputs when any watched wildcard variable changes. Outputs string info to a machine via a UDP MultiCast socket."/> <VAR Enabled="1"/> <VAR AddFormat="Client %Client.*.ConnID% connected at %Time%\r \t Address: %Client.*.Addr% \r \t Port: %Client.*.Port% \r \t Protocol: %Client.*.Protocol% \r\n"/> <VAR ModFormat="Client %Client.*.ConnID% modified at %Time% \r\n"/> <VAR DelFormat="Client %Client.*.ConnID% tore down at %Time% \r\n"/> <LIST Name = "Watches"> <VAR WatchRoot="Client.*"/> </LIST> <LIST Name = "Outputs"> <LIST Name="Direct Output Through UDP MultiCast Socket"> <VAR Type="UDPMCast"/> <VAR Dest="multicast.real.com"/> <VAR Port="4326"/> <VAR TTL="16"/> </LIST> </LIST> </LIST>
|
出力
Information sent through the UDP MultiCast Socket:
|
Client 4 connected at 09:00:43 Address: 123.435.111.907 Port: 5401 Protocol: RTSP
|
Client 8 modified at 09:20:08
|
Client 1 tore down at 09:31:26
|
ロギング テンプレート
カスタム ロギング機能は、Helix Universal Proxy 設定ファイル rmproxy.cfg 内のロギング テンプレートで XML 変数を変更することによって実装します。変数は、記録する情報を正確に指定し、ロギング セッションごとの適切な出力形式を定義し、ロギング情報の出力先を指定します。Helix Universal Proxy が設定ファイルをロードすると、テンプレートの指定に従ってロギング セッションが作成されます (設定ファイルには複数のロギング テンプレートを記述でき、同時に複数のテンプレートを使用可能)。
リスト: LoggingTemplates
これは設定ファイル内にロギング テンプレートが記述されていることを指定する最上位レベルのリスト タグです。LoggingTemplates リストには複数のロギング テンプレートを追加できます。
<LIST Name="LoggingTemplates"> ... additional logging template information... </LIST>
|
レジストリ値
例
<LIST Name="LoggingTemplates"> ... </LIST>
|
リスト: Logging Template Name
この LIST では、ロギング テンプレートを定義します。64 バイト以内で一意な名前を指定します。
<LIST Name="LoggingTemplates"> <LIST Name="Logging Template Name"> ...other variables that define the logging template... </LIST> ... additional logging template information... </LIST>
|
レジストリ値
config.LoggingTemplates.string
|
例
<LIST Name="Logging Session 1"> ... </LIST>
|
変数: Description
(オプション) Description を使用して各ロギング テンプレートのコンテキスト情報を記述します。最大 512 バイトまで記述できます。
タグの構文
<VAR Description="string"/>
|
有効値
string - テンプレートに関する最大 512 バイトの情報
例
<VAR Description="This is an example of a template description."/>
|
オンザフライ ロギング
Helix Universal Proxy には、任意のタイミングで、Helix Universal Proxy を再起動することなく、ロギング テンプレートを追加または削除したり、有効または無効にする機能があります。ロギング テンプレートを有効または無効にするには、設定ファイルの Enabled 変数の値を変更します。Helix Universal Proxy は、ほかのアクティブなロギング セッションを邪魔することなく、即座に変数の変更を適用します。
変数: Enabled
(オプション) Enabled を使用してこのロギング テンプレートを有効にします。この変数がロギング テンプレートで定義されていない場合は、プラグインによって作成され、デフォルトで 1 に設定されます。
タグの構文
有効値
0 - テンプレートは無効
1 - テンプレートは有効
例
監視対象およびワイルドカード変数
ロギング テンプレートでリストに名前を指定することで、Helix Universal Proxy の特定のレジストリ変数の変化を監視またはウォッチできます。監視対象の変数の値が変化すると、ロギング システムはテンプレートに定義された、出力の生成などの指示を実行します。
具体的に指定された変数を監視する以外に、レジストリの同じレベルにあるすべての変数を、それぞれの名前を個別に指定することなく、監視することもできます。同じレベルに存在する変数はワイルドカード '*' によって表現できます。この方法で監視対象として指定された変数を、ワイルドカード変数と呼びます。
ワイルドカード変数を使用するには、WatchRoot 変数を定義して、ワイルドカードで表された変数をレポートするルート レベルを指定する必要があります。ルート レベルは、変化を監視するレジストリ内の最上位レベルにある変数です。ルート レベル以下の変数は、具体的に名前を指定されるか、またはワイルドカードで表されるレベルに存在する場合に、監視対象になります。
テンプレートに WatchRoot 変数を指定することによって、プラグインは、セッションがセット アップされたことを認識します。
リスト: Watches
Watches リストには、変化を監視する Helix Universal Proxy の具体的なレジストリ変数名を指定します。このリストは、ウォッチ テンプレート ロギングのオプションであり、セッション ロギングでは無視されます。
 |
警告 ! Watches リストの変数定義ではワイルドカードを使用する必要はありません。ワイルドカードを使用して監視対象の変数を指定するには、WatchRoot 変数を定義して、セッション ロギングをセット アップします。
|
<LIST Name="LoggingTemplates"> <LIST Name="Logging Session 1">
<LIST Name="Watches"> ...specific names of the registry variables to monitor... </LIST> ...other variables that define the logging template... </LIST> </LIST>
|
レジストリ値
config.LoggingTemplates.string.Watches
|
例
<LIST Name="Watches"> <VAR LoadState="Server.LoadState"/>
...specific names of other registry variables to monitor...
</LIST>
|
変数: WatchRoot
WatchRoot を使用してワイルドカード変数をレポートするルート レベルを定義し、それによってセッション ロギングをセット アップします。ルート レベルは、変化を監視するレジストリ内の最上位レベルにある変数です。ルート レベル以下の変数は、具体的に名前を指定されるか、またはワイルドカードで表されるレベルに存在する場合に、監視対象になります。
 |
警告 ! インターバルタイプのテンプレートでは、WatchRoot 変数は無視されます。変数をワイルドカードを使用して指定することはできません。監視するには、Watches リストで指定します。
|
タグの構文
<VAR WatchRoot="Root Level"/>
|
有効値
Root Level.* - レジストリの任意の変数に引き続き、その変数の下位階層にある具体名を指定されたレジストリ変数およびワイルドカードの組み合わせを指定します。
例
<VAR WatchRoot="Client.*"/>
- or -
<VAR WatchRoot="Client.*.Session.*"/>
|
整形文字列
Helix Universal Proxy は、整形文字列を使用して、レジストリに関して収集した情報を出力します。整形文字列には、テキスト、レジストリ変数の名前、および整形指示を指定します。Helix Universal Proxy はレジストリの変数の値を検索し、値をテキスト文字列に挿入し、指定された指示に従って出力を整形します。
インターバルまたはセッション タイプのテンプレートを使用した場合、基本出力は Format 変数を使用して生成します。セッションタイプのロギングの場合に限り、AddFormat 変数および DelFormat 変数を使用して、監視対象のワイルドカード変数がレジストリで追加または削除されるたびに出力を生成することもできます。
 |
警告 ! インターバル ロギングおよびセッション ロギングでは、少なくとも 1 つの整形文字列変数をテンプレートごとに定義する必要があります。1 つも定義されなかった場合、そのロギング セッションでは出力が生成されません。
|
変数: Format
インターバルタイプのロギングが有効な場合にテキスト文字列を出力するには、Format 変数を指定する必要があります。1 つも指定しなかった場合は何も出力されません。セッション ロギングでは、ほかの整形文字列変数が定義されていない場合に出力を生成するために、この変数を指定する必要があります。
タグの構文
有効値
例 - インターバルタイプのロギング
<VAR Format="Client Count: %Server.ClientCount%\r\n"/>
|
例 - セッションタイプのロギング
<VAR WatchRoot="Client.*"/> ... <VAR Format="Client ID: %Client.*.ConnID%\r\n"/>
- or -
<VAR Format="Client ID: %#ConnID%\r\n"/>
|
変数: AddFormat
変数: DelFormat
(オプション) セッションタイプのロギングの場合に限り、Add/DelFormat 変数を使用して、監視対象のワイルドカード変数がレジストリで追加、削除、または変更されるたびに出力を生成することができます。監視対象のワイルドカード変数が追加、変更、または削除され、テンプレートで適切な Add/DelFormat 文字列が定義されていない場合、プラグインは 「変数: Format」 文字列が存在するかどうかを調べます。Format 文字列が定義されていない場合は何も出力されません。
 |
備考: Add/DelFormat 変数は、インターバルタイプのロギングが有効な場合は無視されます。
|
タグの構文
<VAR AddFormat="string"/> <VAR DelFormat="string"/>
|
有効値
- text - 引数区切り文字 '%' の外側で指定された任意のテキスト文字列
%registry variable% - 引数区切り文字 '%' の内側で指定された任意のレジストリ変数名。この名前を指定する方法は次の 2 つがあります。
- ワイルドカード引数区切り文字 '#' を名前の前に記述して、変数がワイルドカードのルートの
WatchRoot の子であることを指定します。
- ワイルドカード ルートの子またはレジストリ階層での下位にあるレジストリ変数の完全修飾名を指定します。
Date, Time, Hour, Min, Sec - 現在の日時情報を出力するために引数区切り文字 '%' の内側で定義する特別な指示
Date - 日付 (mm/dd/yy)
Time - hh:mm:ss (24 時間制) で表した時刻
Hour - 時 (00 - 23)
Min - 分 (00 - 59)
Sec - 秒 (00 - 59)
\n, \r, \t - 引数区切り文字 '%' の外側で指定された、改行、復帰、またはタブのスペース エスケープ文字
- 上記の任意の組み合わせ
例
<VAR AddFormat="Client %Client.*.ConnID% connected at %Time%"/> <VAR ModFormat="Client %#ConnID% was modified."/> <VAR DelFormat="Client %Client.*.ConnID% tore down.\r\n"/>
|
出力間隔
出力間隔変数を使用して、ログ レポートを生成するタイミングを指定できます。
変数: Interval - ログ レポートは Interval で指定された時間間隔で定期的に生成されます。
変数: MinInterval - 監視対象の変数が設定されないかぎり、ログ レポートは生成されません。監視対象の変数が変化すると、前回のレポート生成時刻から MinInterval で指定された時間が経過していた場合は即座にログ レポートが生成されます。MinInterval で指定された時間がまだ経過していなかった場合は、経過してからログ レポートが生成されます。
変数: MaxInterval - MaxInterval で指定された時間以内に定期的にログ レポートが生成されます。監視対象の変数が変化すると、ログ レポートが即座に生成されます。
出力間隔変数の使用はオプションです。出力間隔変数がどれも定義されていない場合、監視対象の変数が設定されないかぎりログ レポートは生成されません。監視対象の変数が変化すると、ログ レポートが即座に生成されます。
 |
備考: WatchRoot 変数が定義されている場合、セッション ロギングがセット アップされ、出力間隔変数は無視されます。
|
次の表に、複数の出力間隔変数が定義された場合のログ レポートの生成について示します。
出力間隔変数を組み合わせて定義した場合のログ レポートの生成
| 定義された変数 |
結果の動作 |
Interval MinInterval |
Interval 変数が無視されます。監視対象の変数が設定されないかぎり、ログ レポートは生成されません。監視対象の変数が変化すると、前回のレポート生成時刻から MinInterval で指定された時間が経過していた場合は即座にログ レポートが生成されます。MinInterval で指定された時間がまだ経過していなかった場合は、経過してからログ レポートが生成されます。 |
Interval MaxInterval |
Interval 変数が無視されます。MaxInterval で指定された時間以内に定期的にログ レポートが生成されます。監視対象の変数が変化すると、ログ レポートが即座に生成されます。 |
MinInterval MaxInterval |
MaxInterval で指定された時間以内に定期的にログ レポートが生成されます。監視対象の変数が変化すると、前回のレポート生成時刻から MinInterval で指定された時間が経過していた場合は即座にログ レポートが生成されます。MinInterval で指定された時間がまだ経過していなかった場合は、経過してからログ レポートが生成されます。 |
| すべて |
Interval 変数が無視されます。MaxInterval で指定された時間以内に定期的にログ レポートが生成されます。監視対象の変数が変化すると、前回のレポート生成時刻から MinInterval で指定された時間が経過していた場合は即座にログ レポートが生成されます。MinInterval で指定された時間がまだ経過していなかった場合は、経過してからログ レポートが生成されます。 |
変数: Interval
変数: MaxInterval
変数: MinInterval
出力間隔変数を使用して、ログ レポートを生成するタイミングを指定できます。整数値が 1 つ指定された場合、出力間隔はミリ秒単位であるとみなされます。これらの変数は、WatchRoot 変数が定義されている場合は無視されます。
タグの構文
<VAR Interval="integer"/> <VAR MinInterval="integer"/> <VAR MaxInterval="integer"/>
|
有効値
##:##:## - ## 時、## 分、## 秒をコロン区切りで指定
例
<!-- Report the Log every 12 hours 30 minutes --> <VAR Interval="12:30:00"/>
- or -
<!-- If a watched variable has changed, Report the Log within 1 second --> <VAR MinInterval="00:00:01"/> <!-- Report the Log at least once an hour --> <VAR MaxInterval="01:00:00"/>
|
出力タイプ
カスタム ロギング機能には、ローカルまたはマウント ファイル システム、標準エラー、標準出力、UNIX syslog、ネットワーク ソケット、および Windows NT イベント ログなど、ロギング セッションの出力タイプが多数用意されています。さらに、ロギング セッションはその情報を複数の出力先に出力できます。
リスト: Outputs
Outputs リストには、出力のリストを指定します。出力はそれ自身がリストです。各出力リストの実際の出力先は、Type 変数の値によって指定されます。
 |
警告 ! このリストは、インターバルタイプ ロギングおよびセッションタイプ ロギングのどちらにも指定する必要があります。
|
<LIST Name="LoggingTemplates"> <LIST Name="Logging Session 1">
<LIST Name="Outputs"> ...output lists... </LIST> ...other variables that define the logging template... </LIST> </LIST>
|
レジストリ値
config.LoggingTemplates.string.Outputs
|
例
<LIST Name="Outputs"> ... </LIST>
|
リスト: Output Type Name
この LIST は出力タイプを定義します。一意であれば任意の名前をリストに付けることができます。
<LIST Name="LoggingTemplates"> <LIST Name="Logging Session 1">
<LIST Name="Outputs"> <LIST Name="Output Type Name"> ...other variables that define the output type... </LIST> ...other output lists... </LIST> ...other variables that define the logging template... </LIST> </LIST>
|
レジストリ値
config.LoggingTemplates.string.Outputs.string
|
例
<LIST Name="Local File Output"> ... </LIST>
|
変数: Type
Type 変数の値は、ロギング テンプレートの出力先を示します。多くの出力タイプでは、Type 変数以外にも、特定の出力処理をサポートする変数を必要とします。詳細については、各出力タイプの説明に付随する関連情報のセクションを参照してください。
タグの構文
有効値
StdErr - 標準エラー
StdOut - 標準出力
File - ローカル ファイルに出力します。その他の必要な変数については、「ローカル ファイル」を参照してください。
TCP - TCP ソケットに出力します。その他の必要な変数については、「TCP ソケット」を参照してください。
HTTPPost - HTTP ポストによって TCP ソケットに出力します。「HTTP ポストによる TCP ソケットへの出力」を参照してください。
TCPListen - TCP ポートで接続をリッスンし、クライアントが接続したときにそのポートに出力します。その他の必要な変数については、「TCP ポートのリッスン」を参照してください。
UDP - UDP ソケットに出力します。その他の必要な変数については、「UDP ソケット」を参照してください。
UDPMCast - UDP マルチキャスト ソケットに出力します。その他の必要な変数については、「UDP マルチキャスト」を参照してください。
NTEventLog - (Windows NT のみ) Windows NT イベント ログに出力します。その他の必要な変数については、「Windows NT イベント ログ」を参照してください。
Syslog - (UNIX のみ) UNIX syslog に出力します。その他の必要な変数については、「UNIX Syslog」を参照してください。
Pipe - (UNIX のみ) 別のプログラムへのパイプに出力します。その他の必要な変数については、「別のプログラムへのパイプ出力」を参照してください。
標準エラー
標準エラーに出力するには、Type 変数の値として StdErr を指定します。この場合、ほかの変数は必要ありません。
タグの構文
有効値
例
<LIST Name="Outputs"> <LIST Name="Standard Error Output"> <VAR Type="StdErr"/> </LIST> </LIST>
|
標準出力
標準出力に出力するには、Type 変数の値として StdOut を指定します。この場合、ほかの変数は必要ありません。
タグの構文
有効値
例
<LIST Name="Outputs"> <LIST Name="Standard Out Output"> <VAR Type="StdOut"/> </LIST> </LIST>
|
ローカル ファイル
ローカル ファイルに出力するには、Type 変数の値として File を指定します。同時にローカル ファイルの名前も指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Filename="string"/>
|
有効値
-
Type
-
File - ローカル ファイルに出力します。
-
Filename
-
Name - ローカル ファイルの名前
例
<LIST Name="Outputs"> <LIST Name="Local File Output"> <VAR Type="File"/> <VAR Filename="filename.log"/> </LIST> </LIST>
|
サイズ ベースのログのローリングを使用したローカル ファイル出力
ローカル ログ ファイルに出力します。現在のログ ファイルのサイズが LogRollSize で指定された最大メガバイト数に達すると、新しいログ ファイルに出力先を変更します。Type 変数は File に設定して、ローカル ファイルの名前を指定する必要があります。
 |
備考: Helix Universal Proxy は、ローリング設定したログ ファイルの名前に日時情報を自動的に追加します。
|
タグの構文
<VAR Type="string"/> <VAR Filename="string"/> <VAR LogRollSize="integer"/>
|
有効値
-
Type
-
File - ローカル ファイルに出力します。
-
Filename
-
Name - ローカル ファイルの名前
-
LogRollSize
-
# - メガバイト単位で指定するログの最大サイズ。このサイズに到達すると出力先を新しいログ ファイルに切り替えます。下限値は 1 MB です。
例
<LIST Name="Outputs"> <!-- Roll Log When Size > 1048576 bytes -->
<LIST Name="Size Rolled Local File Output"> <VAR Type="File"/> <VAR Filename="filename.log"/> <VAR LogRollSize="5"/> </LIST> </LIST>
|
時間ベースのログのローリングを使用したローカル ファイル出力
ローカル ログ ファイルに出力します。LogRollFrequency で指定された時間内に新しいログ ファイルを作成 (ロール オーバー) します。Type 変数は File に設定して、ローカル ファイルの名前を指定する必要があります。
 |
備考: Helix Universal Proxy は、ローリング設定したログ ファイルの名前に日時情報を自動的に追加します。
|
タグの構文
<VAR Type="string"/> <VAR Filename="string"/> <VAR LogRollFrequency="integer"/>
|
有効値
-
Type
-
File - ローカル ファイルに出力します。
-
Filename
-
Name - ローカル ファイルの名前
-
LogRollFrequency
-
##:##:## - (hh:mm:ss) 最大経過時間。この時間が経過したら出力先を新しいログ ファイルに切り替えます。
例
<LIST Name="Outputs"> <!-- Roll Log Every Hour -->
<LIST Name="Time Rolled Local File Output"> <VAR Type="File"/> <VAR Filename="filename.log"/> <VAR LogRollFrequency="01:00:00"/> </LIST> </LIST>
|
TCP ソケット
TCP ソケットに出力するには、Type 変数の値として TCP を指定します。TCP ソケットの宛先およびポートも指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Dest="Destination"/> <VAR Port="integer"/>
|
有効値
-
Type
-
TCP - TCP ソケットに出力します。
-
Dest
Name - 宛先の DNS ホスト名
###.###.###.### - 宛先の IP アドレス
-
Port
-
# - 宛先のポート番号
例
<LIST Name="Outputs"> <LIST Name="TCP Socket Output"> <VAR Type="TCP"/> <VAR Dest="123.123.123.123"/> <VAR Port="1234"/> </LIST> </LIST>
|
HTTP ポストによる TCP ソケットへの出力
HTTP ポストによって TCP ソケットに出力するには、Type 変数の値として HTTPPost を指定します。TCP ソケットの宛先およびポートも指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Dest="Destination"/> <VAR Port="integer"/>
|
有効値
-
Type
-
HTTPPost - HTTP ポストによって TCP ソケットに出力します。
-
Dest
Name - 宛先の DNS ホスト名
###.###.###.###/filename - 宛先の IP address およびファイル
-
Port
-
# - 宛先のポート番号
例
<LIST Name="Outputs"> <LIST Name="HTTP Post to TCP Socket Output"> <VAR Type="HTTPPost"/> <VAR Dest="123.123.123.123/logrecv.cgi"/> <VAR Port="1234"/> </LIST> </LIST>
|
TCP ポートのリッスン
TCP ソケットで接続をリッスンし、クライアントが接続したときにそのポートに出力するには、Type 変数の値として TCPListen を指定します。リッスンするポートも指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Port="integer"/>
|
有効値
-
Type
-
TCPListen - クライアントが接続したときに TCP ポートに出力します。
-
Port
-
# - リッスンするソケットのポート番号
例
<LIST Name="Outputs"> <LIST Name="TCP Listen Output"> <VAR Type="TCPListen"/> <VAR Port="1235"/> </LIST> </LIST>
|
UDP ソケット
UDP ソケットに出力するには、Type 変数の値として UDP を指定します。UDP ソケットの宛先およびポートも指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Dest="Destination"/> <VAR Port="integer"/>
|
有効値
-
Type
-
UDP - UDP ソケットに出力します。
-
Dest
Name - 宛先の DNS ホスト名
###.###.###.### - 宛先の IP アドレス
-
Port
-
# - 宛先のポート番号
例
<LIST Name="Outputs"> <LIST Name="UDP Socket Output"> <VAR Type="UDP"/> <VAR Dest="123.123.123.124"/> <VAR Port="1236"/> </LIST> </LIST>
|
UDP マルチキャスト
UDP マルチキャスト ソケットに出力するには、Type 変数の値として UDPMCast を指定します。UDP ソケットの宛先およびポートも指定する必要があります。必要に応じて TTL (Time To Live: 生存期間) を指定することもできます。
タグの構文
<VAR Type="string"/> <VAR Dest="Destination"/> <VAR Port="integer"/> <VAR TTL="integer"/>
|
有効値
-
Type
-
UDPMCast - UDP ソケットを使用して UDP マルチキャストに出力します。
-
Dest
-
###.###.###.### - 宛先の IP アドレス
-
Port
-
# - 宛先のポート番号
-
TTL (オプション)
-
# - (生存期間) ブロードキャストが伝達可能な最大ホップ数。デフォルトは 32 です。
例
<LIST Name="Outputs"> <LIST Name="UDP Socket Output"> <VAR Type="UDPMCast"/> <VAR Dest="239.123.123.128"/> <VAR Port="1238"/> <VAR TTL="32"/> </LIST> </LIST>
|
Windows NT イベント ログ
(Windows NT のみ) Windows NT イベント ログに出力するには、Type 変数の値として NTEventLog を指定します。出力情報に割り当てるエラー レポート優先順位も指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Priority="Priority Type"/>
|
有効値
-
Type
-
NTEventLog - Windows NT イベント ログに出力します。
-
Priority
LOG_ERR - エラー情報を出力することを示します。
LOG_WARNING - 警告メッセージを出力することを示します。
LOG_INFO - 一般メッセージを出力することを示します。
例
<LIST Name="Outputs"> <LIST Name="NT Event Log Output"> <VAR Type="NTEventLog"/> <VAR Priority="LOG_INFO"/> </LIST> </LIST>
|
UNIX Syslog
(UNIX のみ) UNIX syslog に出力するには、Type 変数の値として Syslog を指定します。出力情報に割り当てるエラー レポート優先順位および出力ロギング ソースの識別子も指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Ident="Output Identifier"/> <VAR Priority="Priority Type"/>
|
有効値
-
Type
-
Syslog - UNIX syslog に出力します。
-
Ident
-
Output Identifier - 出力の文字列名識別子
-
Priority
LOG_EMERG - 緊急情報を出力することを示します。
LOG_ALERT - 警告メッセージを出力することを示します。
LOG_CRIT - 致命的メッセージを出力することを示します。
LOG_ERR - エラー情報を出力することを示します。
LOG_WARNING - 警告メッセージを出力することを示します。
LOG_NOTICE - 通知を出力することを示します。
LOG_INFO - 一般メッセージを出力することを示します。
LOG_DEBUG - デバッグ情報を出力することを示します。
例
<LIST Name="Outputs"> <LIST Name="UNIX SysLog Output"> <VAR Type="Syslog"/> <VAR Ident="Real Server Output"/> <VAR Priority="LOG_INFO"/> </LIST> </LIST>
|
別のプログラムへのパイプ出力
(UNIX のみ) 別のプログラムへのパイプに出力するには、Type 変数の値として Pipe を指定します。パイプの出力を受信するコマンドも指定する必要があります。
タグの構文
<VAR Type="string"/> <VAR Command="command"/>
|
有効値
-
Type
-
Pipe - 別のプログラムへのパイプ出力
-
Command
-
Command - パイプ出力を受信するコマンド
例
<LIST Name="Outputs"> <LIST Name="Piped Output"> <VAR Type="Pipe"/> <VAR Command="> /dev/lp"/> </LIST> </LIST>
|
|
© 2002 RealNetworks, Inc. 詳細については、RealNetworks を参照してください。 画面左側に目次フレームが表示されない場合は、ここをクリックしてください。
|