# 副次式ビルダーの設定

副次式ビルダーは、AND、OR、NOT、および括弧によるグループ化を使用して、副次式から複雑なルール条件を作成する場合に使用します。ルール・ビルダーは、変更内容を適用するときにルールを妥当性検査して、括弧数の不一致およびサポートされない論理演算子について警告します。

このページを表示するには、「サーバー」 > 「サーバー・タイプ」 > 「Web サーバー」 > 「web_server_name」 > 「Intelligent Management」 > 「トレース仕様」 > 「副次式ビルダー」をクリックします。

## 論理演算子

次のリストに、論理演算子の選択項目を示します。

表 1. トレース論理演算子
オペレーター | 説明
--- | ---
`OR` | 論理 `OR` 演算子。
`AND` | 論理 `AND` 演算子。
`NOT` | 論理 `NOT` 演算子

## オペランドの選択

オペランドは種別ルールの一部で、ランタイムがルールをジョブにマッチングするために使用します。 例えば、`HTTP` に等しいプロトコル・タイプを指定すると、ランタイムは、プロトコル・タイプが `HTTP` のジョブを検索します。次のリストに、オペランドの選択項目を示します。

表 2. HTTP 要求オペランド
オペランド | 構文 | 説明
--- | --- | ---
仮想ホスト | `virtualhost` | Web アプリケーションを特定のホスト名に対して構成するために使用される要求の仮想ホスト・ターゲット。
仮想ポート | `数値` | Web アプリケーションを特定のポートに対して構成するために使用される要求の仮想ポート・ターゲット。
URI | `uri` | Uniform Resource Identifier 要求のパスを識別することができます。URL が http://host:port/path?p1=v1 である場合、パスは `path` です。
ユーザー ID | `userid` | 要求を送信した認証ユーザーのユーザー ID を返します。
グループ ID | `groupingid` | 要求を送信した認証ユーザーのグループ名のリストを返します。
要求照会パラメーター名 | `queryparm$<name>` | ヘッダー名および値。 例えば、式 `queryparm$timezone='EST'` は、 要求に `timezone` という名前で値が `EST` の HTTP 照会パラメーターが含まれているかどうかをテストします。照会パラメーターが存在するかどうかをテストするには、 次の形式のいずれかを使用します。
    queryparm$timezone IS NOT NULL
    queryparm$timezone IS NULL
要求ヘッダー名 | `header$<name>` | ヘッダー名および値。 例えば、式 `header$Host='localhost'` は、要求に値が `localhost` の HTTP ホスト・ヘッダーが含まれているかどうかをテストします。ホスト・ヘッダーが存在するかどうかをテストするには、 次のいずれかを使用します。
    header$Host IS NOT NULL
    header$Host IS NULL
Cookie ヘッダー名 | `cookie$<name>` | Cookie 名。 例えば、式 `cookie$My_Cookie_Name='My_Cookie_Value'` は、`My_Cookie_Name` という名前で値が `My_Cookie_Value` の Cookie が含まれているかどうかを確認するための要求をテストします。特定の Cookie が存在するかどうかをテストするには、次のいずれかの式を使用します。
    cookie$MyCookieName IS NOT NULL
    cookie$MyCookieName IS NULL
HTTP メソッド | `HTTPMethod` | 要求の HTTP メソッド。可能な値は、POST、GET、PUT、および DELETE です。
クライアント・ホスト | `clienthost` | 完全修飾クライアント・ホスト名。この値は、インターネット・プロトコル (IP) コマンドのホスト名です。このオペランドは、`>、>=、<、<=` などの数値演算子をサポートしません。
クライアント IPV4 | `clientipv4` | Internet Protocol version 4 (IPv4) ドット付きクワッドのアドレス・タイプ `n.n.n.n` を使用したクライアントの IP アドレス。
クライアント IPV6 | `clientipv6` | Request for Comments 1924 (RFC 1924) に準拠した、クライアント・コンピューターのインターネット・プロトコル・バージョン 6 (IPv6) 128 ビット・アドレス・タイプ `x:x:x:x:x:x:x:x`。
サーバー・ホスト | `serverhost` | サーバーの完全修飾ホスト名。このオペランドは、`>、>=、<、<=` などの数値演算子をサポートしません。
サーバー IPV4 | `serveripv4` | IPv4 のドット付きクワッド・アドレス・タイプ `n.n.n.n` を使用した、サーバー・コンピューターの IP アドレス。
サーバー IPV6 | `serveripv6` | RFC 1924 に準拠した、サーバー・コンピューターの IPv6 128 ビット・アドレス・タイプ `x:x:x:x:x:x:x:x`。
ポート | `port` | 要求が受信された listen ポート。
プロトコル | `protocol` | 要求を伝送する通信プロトコル。現在サポートされているプロトコルは、HTTP、HTTPS、SOAP、および SOAPS です。
時間 | `time` | 特定の要求を認可する必要がある日時を定義するために使用します。`StartTime` および `EndTime` という 2 つのオプション・フィールドがあります。 定義された時間枠外で要求が受信された場合、その要求は処理されません。 開始時刻と終了時刻のフィールドの形式は `dayOfWeek/dayOfMonth/month/year::hour:minute:second` です。 例えば、2007 年 4 月 11 日 午後 1:03:45 は次のように指定します。 Thu/11/Apr/2007::13:03:45 いずれのフィールドも値 * でワイルドカードを使用できます。 例えば、毎月の 1 日は `*/1` と指定します。 `dayofWeek` の値は Sun、Mon、Tue、Wed、Thu、Fri、Sat で、`dayOfMonth` の値は 1 から 31 です。 `month` 値は 12 カ月を表す非数値の Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、 Dec です。 `year` 値は、4 桁の年です。例えば 2007。 `hour` 値は 24 時間クロックの時刻です。例えば、8am は ::8 と表わします。`minute` と `second` は 0 から 59 の範囲の整数です。 スラッシュ (/) は、日付パラメーターを区切るために 使用し、二重のコロン (::) は日付パラメーターを区切るために使用し、 コロン (:) は時刻パラメーターを区切るために使用します。`time` オペランドが使用されるルール全体のブール値の結果は、ルーティング・アクションを決定するために使用されます。
比率 | `percentage$<val>` | percentage オペランドは、時間の固定パーセンテージを `true` に評価します。 例えば、 `percentage$50` は、時間の平均 50% で `true`に評価します。
起動 | `rampup$<startTime>$<completionTime>` | `rampup` オペランドは、時間の可変パーセンテージを `true` に評価します。常に `<startTime>` の前には `false` に評価し、`<completionTime>` の後に `true` に評価します。 時間が `<startTime>` から `<completionTime>` に進むにつれ、`true` に評価します。パーセンテージは直線的に増加します。 `<startTime>` と `<completionTime>` の形式は `day/month/year::hour:min:sec` です。 `day` は日、`month` は月 (Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、Dec)、`year` は 4 桁の年、`hour` は 24 時間クロックの 2 桁の時、`min` は 2 桁の分、`sec` は 2 桁の秒です。 例えば、 `rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00` は、2007 年 1 月 1 日の午前 8 時に `true` への評価を開始する場合がありますが、常に同日の午後 5 時の増加完了時点で `true` と評価します。

## オペレーター

選択する演算子に応じて、作成する副次式の値を入力します。演算子を評価した結果は、すべてブール値になります。演算子に大/小文字の区別はありません。`AND` は `AnD` と等価です。

表 3. トレース仕様演算子
オペレーター | 説明
--- | ---
等しい - 大/小文字を無視 (EQUALSIGNORECASE) | 等価 (大/小文字の区別なし) 演算子。ストリングの大/小文字は無視されます。 `'ABC' EQUALSIGNORECASE 'abc'` は true です。`('ABC' = 'abc')` は false です。
等しくない (< >) | 非等価演算子は、オペランド値が入力された値に等しくないことを表します。
次に含まれる (IN) | `string IN list of strings` は、左方のストリングが右方にリストされたストリングの 1 つと完全に一致する場合に (大/小文字の区別があります) true に評価されます。例: ’adrian’ in `('keith','eric','kalyan','david', 'adrian and etc')` は false です。 `'adrian'` in `('tom','adrian')` は true です。 ’adrian’ in `('Tom','Adrian')` は false です。 `integer IN list of integers` : `1` in `(1,2,3,4,5)` は true です。 `6` in `(1,2,3,4,5)` は false です。
類似 (LIKE) | ストリング・オペランド値のパターン・マッチングを表します。値には、パターン・マッチングの始まりが予期される位置にワイルドカード文字 (`%`) が含まれている必要があります。 例えば、式
    host LIKE %blanca
は、ワード `blanca` および `blanca` で終わる他のすべてのワードと一致し、式
     host LIKE blanca%
は、ワード `blanca` および `blanca` で始まる他のすべてのワードと一致します。 式
    host LIKE %blanca%
は、`blanca`、およびトークン `blanca` が埋め込まれているすべてのワードと一致します。
類似 - 大/小文字を無視 (LIKEIGNORECASE) | この演算子は、ストリング・オペランド値のパターン・マッチングを表します。 ストリングの大/小文字は無視されます。
NULL 以外 (IS NOT NULL) | 照会の妥当性検査は、要求されたパラメーターが存在することを示しています。
連結 (+) | この演算子は、`'abc'+'def'` を `'abcdef'` と評価します。
類似 - 次に含まれる (LIKEIN) | この演算子は、`string likein (string1, string2, string3,...)` とすると、`likein` の左方のストリングが stringN の 1 つ以上のストリングと一致している場合に true と評価されることを表します。
NULL (IS NULL) | 照会の妥当性検査は、要求されたパラメーターが存在しないことを示しています。オペランドに `NULL` 値が含まれているかどうかをテストします。
等号 ( = ) | 等価演算子は、大/小文字を区別した一致を表します。
より大 (>) | 標準的な論理結果に評価されます。
以上 (>=) | 標準的な論理結果に評価されます。
より小 (<) | 標準的な論理結果に評価されます。
以下 (<=) | 標準的な論理結果に評価されます。
間 (BETWEEN) | `AND` とともに使用して、最初の (低い) 値と最後の (高い) 値を含む、ある範囲の値を選択します。この演算子の組み合わせは、数と日付の値に対して機能します。

## 値

選択する演算子に応じて、作成のために選択する副次式の値を入力します。

## 副次式の生成

指定したオペランド、演算子、および値の結果として副次式を生成します。

## 付加

これをクリックして、条件パネルのボックスに付加します。

関連情報:
Web サーバー・プラグイン用 Intelligent Management
トレース仕様
Intelligent Management プラグイン・プロパティー
Intelligent Management プロパティー・コレクション
Web サーバー Intelligent Management リモート・セル

ファイル名: uwve_tracerulebuilder.html