A スマート・ルールのリファレンス

スマート・ルールはWebLogic診断フレームワーク(WLDF)に用意されている事前パッケージ済の関数で、ポリシー式の作成を簡略化できます。「スマート・ルール・ベース・ポリシーの構成」に記載されているように、スケジュールされたポリシー式で使用する場合、スマート・ルールによって動的クラスタでエラスティック・アクションを実行したり、任意のWLDFアクションと組み合せて使用できます。たとえば、クラスタのスタック・スレッドをモニターするスマート・ルールを使用して、システム管理者に電子メールを送信するSMTPアクションを実行できます。

スマート・ルールは、クラスタ・スコープのスマート・ルールとサーバー・スコープのスマート・ルールに分けることができます。

スマート・ルールに指定するパラメータについて

すべてのスマート・ルールは、システムの状態とパフォーマンスを監視するために必要なデータを収集するプロセスであるメトリック値の収集を必要とします。メトリックは修飾されたMBeanの属性としてWLDFに開示されます。スマート・ルールに基づいて、WLDFは、指定したサンプリング・レートで、選択したMBean属性から値を収集し、指定した期間それらの値を保持します。これにより、時間経過に伴ってサーバーまたはクラスタのメトリック変更の傾向を追跡できます。

スマート・ルールを構成する場合、常に次のパラメータを指定します。

ノート:

サンプリング・レートと保存ウィンドウは、ポリシー・スケジュールとはまったく関係ありません。ポリシー・スケジュールは、スマート・ルールの評価時期のみを決定し、サンプリング・レートや保存ウィンドウは決定しません。

サンプリング・レート

サンプリング・レートは、メトリック値を収集する頻度です。たとえば、30秒のサンプリング・レートは、MBean属性の値が30秒ごとに収集されることを意味します。

各スマート・ルールには、デフォルトのサンプリング・レートがあります。WebLogic Server管理コンソールまたはFusion Middleware Controlを使用してスマート・ルールを構成する場合、構成アシスタントで提供されるデフォルトのサンプリング・レートを受け入れることができます。ただし、WLST、RESTまたはJMXを使用してスマート・ルールを構成する場合、サンプリング・レートを明示的に指定する必要があります。

サンプリング・レートは、次の構文を使用して指定できるString値です。

金額[単位]

前の構文では:

  • amountは、整数を表します。

  • unit]は、secondsminutesまたはhoursを表します。それぞれ最初の1文字に短縮できます。たとえば、secondsは、sに短縮できます。

    デフォルトのサンプリング・レートの時間単位は、秒です。

  • amountunitの間に空白文字を含めることができます。

たとえば、30秒を指定するには、次のいずれかを使用します。

  • "30"

  • "30 seconds"

  • "30snds"

  • "30s"

保存ウィンドウ

保存ウィンドウは、収集したサンプルを評価のために内部バッファに保持する期間です。たとえば、5分の保存ウィンドウを指定すると、先行する5分間に収集されたサンプルが保持されます。新しいサンプルが収集されるたびに、最も古いサンプルが削除されます。

スマート・ルールは、保存ウィンドウに対応する期間に収集された特定のメトリックの平均値を計算することで機能します。平均値の取得によって、WebLogic Serverのサーバー、クラスタまたは操作環境で発生している変更のより代表的なビューとそれらの変更の傾向を取得できます。

指定する保存ウィンドウは、サンプリング・レートと同じ構文を使用するString値です。

金額[単位]

時間単位は、secondsminutesまたはhoursで、それぞれ短縮できます。スマート・ルール保存ウィンドウのデフォルトの時間単位は、minutesで、mに短縮できます。たとえば、10分を指定するには、次のいずれかを使用します。

  • "10"

  • "10 minutes"

  • "10mts"

  • "10m"

しきい値

しきい値は、保存ウィンドウの間に収集されたすべてのメトリックの平均値を比較する際の基準となる任意の値です。平均値がスマート・ルールのしきい値の比較条件に一致する場合、(スマート・ルールに設定された他のすべての条件も一致していれば)スマート・ルールはtrueに評価されます。

たとえば、クラスタのアイドル・スレッドの平均数が特定の数以上になった場合にスマート・ルールをtrueとして評価する場合、アイドル・スレッドの数が多いかどうかクラスタをモニターするClusterHighIdleThreadsスマート・ルールにしきい値としてその数を入力できます。このコンテキストでは、このスマート・ルールに指定するしきい値は、上限しきい値と呼ばれます(アイドル・スレッドの平均数がそのしきい値以上であるかどうかを測定するためにクラスタがモニターされるため)。

これに対して、クラスタの平均空きヒープが一定容量を下回った場合にスマート・ルールをtrueとして評価する場合、空きヒープが少ないかどうかクラスタをモニターするClusterLowHeapFreePercentスマート・ルールにしきい値としてその容量を入力します。このコンテキストでは、このスマート・ルールに指定するしきい値は、下限しきい値と呼ばれます(平均空きヒープ容量がそのしきい値より少ないかどうかを測定するためにクラスタがモニターされるため)。

スマート・ルールは、収集した平均メトリック値をどのようにしきい値と比較する必要があるかという点で、それぞれ異なることに注意してください。収集した平均値がしきい値以上である必要があるスマート・ルール、平均がしきい値を超過する必要があるスマート・ルール、平均がしきい値以下である必要があるスマート・ルールなどがあります。

クラスタ・スコープ・スマート・ルール

クラスタ・スコープ・スマート・ルールは、クラスタ内のすべてのアクティブ・ノードに適用されるもので、管理サーバーのポリシーから実行する必要があります。WLDFに用意されているクラスタ・スコープ・スマート・ルールを表A-2にリストし、概要を示します。スマート・ルールごとに、表A-2では次の項目を示します。
  • サンプリングされる特定のメトリック(通常はMBean属性)

  • 保存ウィンドウの間、しきい値を基準とする特定の比較条件に一致する平均メトリック値を持つサーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合に、スマート・ルールがtrueに評価される条件。

表A-1 サマリーまたは管理サーバー・スコープ・スマート・ルール

スマート・ルール メトリック trueに評価されるために必要な条件

ClusterLowThroughput

ThreadPoolRuntimeMBeanThroughputメトリック

平均Throughput値が下限しきい値未満である場合。

ClusterHighProcessCpuLoadAverage

java.lang:type=OperatingSystem MXBeanのProcessCpuLoad

平均ProcessCpuLoad値が上限しきい値以上である場合。

ClusterHighThroughput

ThreadPoolRuntimeMBeanThroughputメトリック

平均Throughput値が上限しきい値以上である場合。

ClusterLowPendingUserRequests

ThreadPoolRuntimeMBeanPendingUserRequestCount

平均PendingUserRequestCount値が下限しきい値未満である場合。

ClusterHighStuckThreads

ThreadPoolRuntimeMBeanStuckThreadCount

平均StuckThreadCount値が上限しきい値以上である場合。

ClusterLowQueueLength

ThreadPoolRuntimeMBeanQueueLength

平均QueueLength値が下限しきい値未満である場合。

ClusterHighPendingUserRequests

ThreadPoolRuntimeMBeanPendingUserRequestCount

平均PendingUserRequestCount値が上限しきい値以上である場合。

ClusterLowProcessCpuLoadAverage

java.lang:type=OperatingSystem MXBeanのProcessCpuLoad

平均ProcessCpuLoad値が下限しきい値未満である場合。

ClusterHighIdleThreads

ThreadPoolRuntimeMBeanExecuteThreadIdleCount

平均ExecuteThreadIdleCount値が上限しきい値以上である場合。

ClusterLowSystemLoadAverage

java.lang:type=OperatingSystem MXBeanのSystemLoadAverage

平均SystemLoadAverage値が下限しきい値未満である場合。

ClusterHighQueueLength

ThreadPoolRuntimeMBeanQueueLength

平均QueueLength値が上限しきい値以上である場合。

ClusterLowHeapFreePercent

JVMRuntimeMBeanHeapFreePercent

平均HeapFreePercent値が下限しきい値未満である場合。

ClusterHighSystemLoadAverage

java.lang:type=OperatingSystem MXBeanのSystemLoadAverage

平均SystemLoadAverage値が上限しきい値以上である場合。

ClusterHighHeapFreePercent

JVMRuntimeMBeanHeapFreePercent

平均HeapFreePercent値が上限しきい値以上である場合。

ClusterLowSystemCpuLoadAverage

java.lang:type=OperatingSystem MXBeanのSystemCpuLoad

平均SystemCpuLoad値が下限しきい値未満である場合。

ClusterLowIdleThreads

ThreadPoolRuntimeMBeanExecuteThreadIdleCount

平均ExecuteThreadIdleCount値が下限しきい値未満である場合。

ClusterGenericMetricRule

指定したMBean属性値

JMXを通じて認識可能な任意のメトリックが、しきい値のある指定された比較条件を満たす場合。(このスマート・ルールは、クラスタ・スコープ・ルールの一般形式です。)

ClusterHighSystemCpuLoadAverage

java.lang:type=OperatingSystem MXBeanのSystemCpuLoad

平均SystemCpuLoad値が上限しきい値以上である場合。

ClusterLowThroughput

ClusterLowThrougputスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.Throughput属性の平均値によって示される、クラスタにおける平均スループットが減少しているかどうかを測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を安全に削減できるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、下限しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.Throughput値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ClusterLowThroughput("clusterName", "period", "duration", throughputLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

Throughput値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する保存ウィンドウ(Stringで表現)。

  • デフォルトの時間単位は、分です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

throughputLimit

ThreadPoolRuntimeMBean.Throughput属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、throughputLimitパラメータの値未満となる必要がある平均Throughput値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 15
throughputLimit 5
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowThroughput("myCluster","30 seconds","15 minutes",5,75)

このスマート・ルールの例が、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからThroughputメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去15分間において、平均Throughput値がクラスタ内の管理対象サーバーの75%以上で5未満です。

ClusterHighProcessCpuLoadAverage

ClusterHighProcessCpuLoadAverageスマート・ルールは、各管理対象サーバーのProcessCpuLoad属性の平均値で示されるクラスタ全体のシステム負荷の増加を測定します。このルールを使用して、スケール・アップ・アクションを実行するなどの方法でクラスタ容量を増加する必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ProcessCpuLoad値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • オペレーティング・システムのProcessCpuLoad値のサンプリング・レートおよび保存ウィンドウ

  • 上限のProcessCpuLoadしきい値

  • ルールがtrueに評価されるために、上限のProcessCpuLoadしきい値以上となる必要がある平均ProcessCpuLoad値を持つクラスタ内のサーバーの割合

ノート:

ProcessCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getProcessCpuLoad--を参照してください。

構文

wls:ClusterHighProcessCpuLoadAverage("clusterName", "period", "duration", procCpuLoadLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

ProcessCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する保存ウィンドウ(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

procCpuLoadLimit

ProcessCpuLoadメトリックの上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、procCpuLoadLimitパラメータの値以上となる必要がある平均ProcessCpuLoad値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
procCpuLoadLimit 0.8
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighProcessCpuLoadAverage("myCluster","30 seconds","10 minutes",0.8,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからProcessCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均ProcessCpuLoad値がクラスタ内の管理対象サーバーの60%以上で0.8以上です。

ClusterHighThroughput

ClusterHighThroughputスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.Throughput属性の平均値によって示される、クラスタ全体のシステム・スループットの増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.Throughput値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.Throughputメトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のThroughputしきい値

  • ルールがtrueに評価されるために、上限のThroughputしきい値以上となる必要があるサンプリング期間中の平均Throughput値を持つクラスタ内のサーバーの割合

構文

wls:ClusterHighThroughput("clusterName", "period", "duration", throughputLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

Throughput値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

throughputLimit

Throughput属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、throughputLimitパラメータの値以上となる必要がある平均Throughput値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
throughputLimit 100
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighThroughput("myCluster","30 seconds","10 minutes",100,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからThroughputメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均Throughput値がクラスタ内の管理対象サーバーの60%以上で100以上です。

ClusterLowPendingUserRequests

ClusterLowPendingUserRequestsスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.PendingUserRequestCount属性の平均値で示されるクラスタ全体の保留中リクエストの減少を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を削減できるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.PendingUserRequestCount値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.PendingUserRequestCountメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のPendingUserRequestCountしきい値

  • ルールがtrueに評価されるために、下限のPendingUserRequestCountしきい値未満となる必要がある平均PendingUserRequestCount値を持つクラスタ内のサーバーの割合

構文

wls:ClusterLowPendingUserRequests("clusterName", "period", "duration", pendingRequestsLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

PendingUserRequestCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

pendingRequestsLimit

PendingUserRequestCount属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、pendingRequestsLimitパラメータの値未満となる必要がある平均PendingUserRequestCount値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
pendingRequestsLimit 5
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowPendingUserRequests("myCluster","30 seconds","10 minutes",5,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからPendingUserRequestCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去10分間において、平均PendingUserRequestCount値がクラスタ内の管理対象サーバーの75%以上で5未満です。

ClusterHighStuckThreads

ClusterHighStuckThreadsスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.StuckThreadCount属性の平均値で示されるスタック・スレッドの数が増加して、間もなくデッドロックになる可能性があるかどうかを測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.StuckThreadCount値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.StuckThreadCount属性のサンプリング・レートおよび保存ウィンドウ

  • 上限のStuckThreadCountしきい値

  • ルールがtrueに評価されるために、上限のStuckThreadCountしきい値以上となる必要がある平均ThreadPoolRuntimeMBean.StuckThreadCount値を持つクラスタ内のサーバーの割合

構文

wls:ClusterHighStuckThreads("clusterName", "period", "duration", stuckThreadsLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

StuckThreadCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

stuckThreadsLimit

StuckThreadCount属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、stuckThreadsLimitパラメータの値以上となる必要がある平均StuckThreadCount値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
stuckThreadsLimit 5
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighStuckThreads("myCluster","30 seconds","10 minutes",5,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからStuckThreadCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均StuckThreadCount値がクラスタ内の管理対象サーバーの60%以上で5以上です。

ClusterLowQueueLength

ClusterLowQueueLengthスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.QueueLength属性の平均値で示されるクラスタ全体のシステム負荷の減少を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を安全に削減できるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.QueueLength値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.QueueLengthメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のQueueLengthしきい値

  • ルールがtrueに評価されるために、下限のQueueLengthしきい値未満となる必要がある平均QueueLength値を持つクラスタ内のサーバーの割合

構文

wls:ClusterLowQueueLength("clusterName", "period", "duration", queueLengthLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

QueueLength値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

queueLengthLimit

QueueLength属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、queueLengthLimitパラメータの値未満となる必要がある平均QueueLength値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 15
queueLengthLimit 5
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowQueueLength("myCluster","30 seconds","15 minutes",5,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからQueueLengthメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去15分間において、平均QueueLength値がクラスタ内の管理対象サーバーの75%以上で5未満です。

ClusterHighPendingUserRequests

ClusterHighPendingUserRequestsスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.PendingUserRequestCount属性の平均値で示されるクラスタ全体のシステム負荷の増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.PendingUserRequestCount値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.PendingUserRequestCountメトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のPendingUserRequestCountしきい値

  • ルールがtrueに評価されるために、上限のPendingUserRequestCountしきい値以上となる必要がある平均PendingUserRequestCount値を持つクラスタ内のサーバーの割合

構文

wls:ClusterHighPendingUserRequests("clusterName", "period", "duration", pendingRequestsLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

PendingUserRequestCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

pendingRequestsLimit

PendingUserRequestCount属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、pendingRequestsLimitパラメータの値以上となる必要がある平均PendingUserRequestCount値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
pendingRequestsLimit 100
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighPendingUserRequests("myCluster","30 seconds","10 minutes",100,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからPendingUserRequestCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均PendingUserRequestCount値がクラスタ内の管理対象サーバーの60%以上で100以上です。

ClusterLowProcessCpuLoadAverage

ClusterLowProcessCpuLoadAverageスマート・ルールは、各管理対象サーバーのProcessCpuLoad属性の平均値で示されるクラスタ全体のシステムCPU負荷の減少を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を削減する必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ProcessCpuLoad値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

ただし、ProcessCpuLoadの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。

このスマート・ルールを使用するには、次の項目を指定します。

  • java.lang:type=OperatingSystem ProcessCpuLoadメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のProcessCpuLoadしきい値

  • ルールがtrueに評価されるために、下限のProcessCpuLoadしきい値未満となる必要がある平均ProcessCpuLoad値を持つクラスタ内のサーバーの割合

ノート:

ProcessCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getProcessCpuLoadを参照してください。

構文

wls:ClusterLowProcessCpuLoadAverage("clusterName", "period", "duration", procCpuLoadLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

ProcessCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

procCpuLoadLimit

ProcessCpuLoad属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、procCpuLoadLimitパラメータの値未満となる必要がある平均ProcessCpuLoad値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 15
procCpuLoadLimit 0.2
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowProcessCpuLoadAverage("myCluster","30 seconds","10 minutes",0.2,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからProcessCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去15分間において、平均ProcessCpuLoad値がクラスタ内の管理対象サーバーの75%以上で0.2未満です。

ClusterHighIdleThreads

ClusterHighIdleThreadsスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.ExecuteThreadIdleCount属性の平均値で示されるクラスタのアイドル・スレッドの数の増加を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を安全に削減できるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.ExecuteThreadIdleCount値を持つ管理対象サーバーの数が、クラスタ内のサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.ExecuteThreadIdleCountメトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のExecuteThreadIdleCountしきい値

  • ルールがtrueに評価されるために、上限のExecuteThreadIdleCountしきい値以上となる必要がある平均ExecuteThreadIdleCount値を持つクラスタ内の管理対象サーバーの割合

構文

wls:ClusterHighIdleThreads("clusterName", "period", "duration", idleThreadsLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

ExecuteThreadIdleCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

idleThreadsLimit

ExecuteThreadIdleCount属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、idleThreadsLimitパラメータの値以上となる必要がある平均ExecuteThreadIdleCount値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
idleThreadsLimit 20
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighIdleThreads("myCluster","30 seconds","10 minutes",20,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからExecuteThreadIdleCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去10分間において、平均ExecuteThreadIdleCount値がクラスタ内の管理対象サーバーの75%以上で20以上です。

ClusterLowSystemLoadAverage

ClusterLowSystemLoadAverageスマート・ルールは、各管理対象サーバーのSystemLoadAverage属性の平均値で示されるクラスタ全体のシステム負荷の減少を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を削減する必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均SystemLoadAverage値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

SystemLoadAverageの値は、システムによって異なることに注意してください。

このスマート・ルールを使用するには、次の項目を指定します。

  • java.lang:type=OperatingSystem SystemLoadAverageメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のSystemLoadAverageしきい値

  • ルールがtrueに評価されるために、下限のSystemLoadAverageしきい値未満となる必要がある平均SystemLoadAverage値を持つクラスタ内の管理対象サーバーの割合

ノート:

SystemLoadAverageメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、http://docs.oracle.com/javase/8/docs/api/java/lang/management/OperatingSystemMXBean.html#getSystemLoadAverage--を参照してください。

構文

wls:ClusterLowSystemLoadAverage("clusterName", "period", "duration", loadLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

SystemLoadAverage値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

loadLimit

SystemLoadAverage属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、loadLimitパラメータの値未満となる必要がある平均SystemLoadAverage値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 15
loadLimit 0.2
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowSystemLoadAverage("myCluster","30 seconds","15 minutes",0.2,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからSystemLoadAverageメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去15分間において、平均SystemLoadAverage値がクラスタ内の管理対象サーバーの75%以上で0.2未満です。

ClusterHighQueueLength

ClusterHighQueueLengthスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.QueueLength属性の平均値で示されるクラスタ全体のシステム負荷の増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.QueueLength値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.QueueLengthメトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のQueueLengthしきい値

  • ルールがtrueに評価されるために、上限のQueueLengthしきい値以上となる必要がある平均QueueLength値を持つクラスタ内の管理対象サーバーの割合

構文

wls:ClusterHighQueueLength("clusterName", "period", "duration", queueLengthLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

QueueLength値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

queueLengthLimit

QueueLength属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、queueLengthLimitパラメータの値以上となる必要がある平均QueueLength値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
queueLengthLimit 100
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighQueueLength("myCluster","30 seconds","10 minutes",100,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからQueueLengthメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均QueueLength値がクラスタ内の管理対象サーバーの60%以上で100以上です。

ClusterLowHeapFreePercent

ClusterLowHeapFreePercentスマート・ルールは、各管理対象サーバーのJVMRuntimeMBean.HeapFreePercent属性の平均値で示されるクラスタ全体のヒープ・ストレスの増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均JVMRuntimeMBean.HeapFreePercent値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの特定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • JVMRuntimeMBean.HeapFreePercentメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のHeapFreePercentしきい値

  • ルールがtrueに評価されるために、下限のHeapFreePercentしきい値未満となる必要があるサンプリング期間中の平均HeapFreePercent値を持つクラスタ内の管理対象サーバーの割合

構文

wls:ClusterLowHeapFreePercent("clusterName", "period", "duration", percentFreeLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

HeapFreePercent値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

percentFreeLimit

HeapFreePercent属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、percentFreeLimitパラメータの値未満となる必要がある平均HeapFreePercent値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
percentFreeLimit 20
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowHeapFreePercent("myCluster","30 seconds","10 minutes",20,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからHeapFreePercentメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均HeapFreePercent値がクラスタ内の管理対象サーバーの60%以上で20未満です。

ClusterHighSystemLoadAverage

ClusterHighSystemLoadAverageスマート・ルールは、各管理対象サーバーのSystemLoadAverage属性の平均値で示されるクラスタ全体のシステム負荷の増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均java.lang:type=OperatingSystem SystemLoadAverage値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

SystemLoadAverageの値は、システムによって異なることに注意してください。

このスマート・ルールを使用するには、次の項目を指定します。

  • java.lang:type=OperatingSystem SystemLoadAverageメトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のSystemLoadAverageしきい値

  • ルールがtrueに評価されるために、上限のSystemLoadAverageしきい値以上となる必要がある平均SystemLoadAverage値を持つクラスタ内の管理対象サーバーの割合

ノート:

SystemLoadAverageメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、http://docs.oracle.com/javase/8/docs/api/java/lang/management/OperatingSystemMXBean.html#getSystemLoadAverage--を参照してください。

構文

wls:ClusterHighSystemLoadAverage("clusterName", "period", "duration", loadLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

SystemLoadAverage値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

loadLimit

SystemLoadAverage属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、loadLimitパラメータの値以上となる必要がある平均SystemLoadAverage値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 5
loadLimit 0.8
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighSystemLoadAverage("myCluster","30 seconds","5 minutes",0.8,60)

このスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからSystemLoadAverageメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去5分間において、平均SystemLoadAverage値がクラスタ内の管理対象サーバーの60%以上で0.8以上です。

ClusterHighHeapFreePercent

ClusterHighHeapFreePercentスマート・ルールは、各管理対象サーバーのJVMRuntimeMBean.HeapFreePercent属性の平均値で示される動的クラスタ全体のヒープ・ストレスの減少を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を削減できるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均JVM空きヒープ率の値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • JVM空きヒープ率メトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のJVM空きヒープしきい値

  • ルールがtrueに評価されるために、上限のJVM空きヒープしきい値以上となる必要がある平均JVM空きヒープの値を持つクラスタ内の管理対象サーバーの割合

構文

wls:ClusterHighHeapFreePercent("clusterName", "period", "duration", percentFreeLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

JVM空きヒープ率の値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

percentFreeLimit

JVM空きヒープ率の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、percentFreeLimitパラメータ以上となる必要がある平均JVM空きヒープ率を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 5
percentFreeLimit 60
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighHeapFreePercent("myCluster","30 seconds","5 minutes",60,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからJVM空きヒープ率メトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去5分間において、平均JVM空きヒープ率の値がクラスタ内の管理対象サーバーの75%以上で60以上です。

ClusterLowSystemCpuLoadAverage

ClusterLowSystemCpuLoadAverageスマート・ルールは、各管理対象サーバーのSystemCpuLoad属性の平均値で示されるクラスタ全体のシステムCPU負荷平均の減少を測定します。このルールを使用して、スケール・ダウンの実行などによってクラスタ容量を削減する必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均java.lang:type=OperatingSystem SystemCpuLoad値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

ただし、SystemCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。

このスマート・ルールを使用するには、次の項目を指定します。

  • java.lang:type=OperatingSystem SystemCpuLoadメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のSystemCpuLoadしきい値

  • ルールがtrueに評価されるために、下限のSystemCpuLoadしきい値未満となる必要がある平均SystemCpuLoad値を持つクラスタ内の管理対象サーバーの割合

ノート:

SystemCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getSystemCpuLoad--を参照してください。

構文

wls:ClusterLowSystemCpuLoadAverage("clusterName", "period", "duration", systemCpuLoadLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

SystemCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

systemCpuLoadLimit

SystemCpuLoad属性の下限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、systemCpuLoadLimitパラメータの値未満となる必要がある平均SystemCpuLoad値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 15
systemCpuLoadLimit 0.2
percentServersLimit 75

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowSystemCpuLoadAverage("myCluster","30 seconds","15 minutes",0.2,75)

このスマート・ルールが、スケール・ダウン・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからSystemCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・ダウン・アクションを起動します。

    過去15分間において、平均SystemCpuLoad値がクラスタ内の管理対象サーバーの75%以上で0.2未満です。

ClusterLowIdleThreads

ClusterLowIdleThreadsスマート・ルールは、各管理対象サーバーのThreadPoolRuntimeMBean.ExecuteThreadIdleCount属性の平均値で示されるクラスタ全体の負荷ストレスの増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断できます。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均ThreadPoolRuntimeMBean.ExecuteThreadIdleCount値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • ThreadPoolRuntimeMBean.ExecuteThreadIdleCountメトリックのサンプリング・レートおよび保存ウィンドウ

  • 下限のExecuteThreadIdleCountしきい値

  • ルールがtrueに評価されるために、下限のExecuteThreadIdleCountしきい値未満となる平均ExecuteThreadIdleCount値を持つクラスタ内の管理対象サーバーの割合

構文

wls:ClusterLowIdleThreads("clusterName", "period", "duration", idleThreadsLimit", percentServerLimit")
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

ExecuteThreadIdleCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、分です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

idleThreadsLimit

下限のExecuteThreadIdleCountしきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、idleThreadsLimitパラメータの値未満となる必要がある平均ExecuteThreadIdleCount値を持つクラスタ内のサーバーの割合。

このパラメータは、floatとして表現されます。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 10
idleThreadsLimit 5
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterLowIdleThreads("myCluster","30 seconds","10 minutes",5,60)

この例のスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからExecuteThreadIdleCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去10分間において、平均ExecuteThreadIdleCount値がクラスタ内の管理対象サーバーの60%以上で5未満です。

ClusterGenericMetricRule

ClusterGenericMetricRuleスマート・ルールは、通常、サーバー・ランタイムMBeanサーバーを通じて公開されており、他のクラスタ・スコープ・スマート・ルールでは提供されていないJMXメトリックの傾向を監視するために使用します。

ターゲット: 管理サーバー

説明

このスマート・ルールでは、特定の時間間隔内にJMXを通じて取得された任意のメトリックの平均値を参照し、クラスタ内の各管理対象サーバーに対して指定した比較演算子を使用してその平均値を特定のしきい値と比較できます。比較条件に一致するサーバーの割合が指定した制限値以上になると、ルールの条件全体が満たされ、そのルールによってtrueが返されます。

このスマート・ルールを使用するには、次の項目を指定します。

  • 動的クラスタ名

  • 有効なJMX ObjectNameまたはObjectNameパターン

  • 属性名またはEL式としての属性式(式は、各MBeanを基準とする属性式)。

    たとえば、MBeanがServerRuntimeMBeanである場合、'OpenSocketsCurrentCount'は、ServerRuntimeMBean.OpenSocketsCurrentCount属性の値を取得します。これに対して、'HealthState.State'は、HealthState子オブジェクトのState値にアクセスします。

  • 有効なブール比較演算子

  • 選択した属性を比較するしきい値

  • ルールがtrueに評価されるために、しきい値に一致する必要があるサンプリング期間中の平均属性値を持つクラスタ内の管理対象サーバーの割合

  • クラスタ内の管理対象サーバー・インスタンスのメトリックのサンプリング・レートおよび保存ウィンドウ

  • サンプルを収集する期間

構文

wls:ClusterGenericMetricRule("clusterName", "instancePattern", "attribute", "operation", thresholdValue, percentServersLimit, "period", "duration")
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

instancePattern

有効なJMX ObjectNameまたはObjectNameパターン

attribute

instancePatternに一致する各MBeanインスタンスの値を取得するJava EL式(式は、各MBeanを基準とする属性式)。

たとえば、MBeanがServerRuntimeMBeanである場合、式'OpenSocketsCurrentCount'は、ServerRuntimeMBeanOpenSocketsCurrentCount属性の値を取得します。これに対して、式'HealthState.State'は、そのMBeanのHealthState子オブジェクトのState値を取得します。

operation

ブール比較演算子: <<===>=または>

thresholdValue

attributeパラメータの値を比較するためのしきい値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、thresholdValueパラメータの値を使用した比較条件を満たす必要がある平均属性値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

period

メトリック値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
instancePattern java.lang:type=OperatingSystem
attribute ProcessCpuLoad
operation >=
thresholdValue 0.9
percentServersLimit 75
period 30
duration 10

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterGenericMetricRule("myCluster","java.lang:type=OperatingSystem","ProcessCpuLoad",">=",0.9,75,"30 seconds","10 minutes")

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからProcessCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件でこのスマート・ルールはtrueに評価されます。

    過去10分間において、OperatingSystemMXBeanProcessCpuLoadの平均値がクラスタ内の管理対象サーバーの75%以上で0.9以上です。

ClusterHighSystemCpuLoadAverage

ClusterHighSystemCpuLoadAverageスマート・ルールは、各管理対象サーバーのオペレーティング・システムのSystemCpuLoad属性の平均値で示されるクラスタ全体のシステム負荷の増加を測定します。このルールを使用して、スケール・アップの実行などによってクラスタ容量を増やす必要があるかどうかを判断します。

ターゲット: 管理サーバー

説明

このスマート・ルールがtrueに評価されるのは、しきい値の比較条件を満たす平均java.lang:type=OperatingSystem SystemCpuLoad値を持つ管理対象サーバーの数が、クラスタ内のすべてのサーバーの指定割合以上になった場合です。

ただし、SystemCpuLoadの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。

このスマート・ルールを使用するには、次の項目を指定します。

  • java.lang:type=OperatingSystem SystemCpuLoadメトリックのサンプリング・レートおよび保存ウィンドウ

  • 上限のSystemCpuLoadしきい値

  • ルールがtrueに評価されるために、上限のSystemCpuLoadしきい値以上となる平均SystemCpuLoad値を持つクラスタ内の管理対象サーバーの割合

ノート:

SystemCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getSystemCpuLoad--を参照してください。

構文

wls:ClusterHighSystemCpuLoadAverage("clusterName", "period", "duration", systemCpuLoadLimit, percentServersLimit)
パラメータ 説明
clusterName

ターゲット動的クラスタの名前(Stringで表現)。

period

SystemCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

systemCpuLoadLimit

SystemCpuLoad属性の上限しきい値として設定する値。

percentServersLimit

スマート・ルールがtrueとして評価されるために、systemCpuLoadLimitパラメータの値以上となる必要がある平均SystemCpuLoad値を持つクラスタ内のサーバーの割合。

このパラメータは、0.0から100.0の間のfloat値として表現されます

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
clusterName myCluster
period 30
duration 5
systemCpuLoadLimit 0.8
percentServersLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ClusterHighSystemCpuLoadAverage("myCluster","30 seconds","5 minutes",0.8,60)

この例のスマート・ルールが、スケール・アップ・アクションを使用して構成されている場合、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにmyClusterの各管理対象サーバー・インスタンスからSystemCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、スケール・アップ・アクションを起動します。

    過去5分間において、平均SystemCpuLoad値がクラスタ内の管理対象サーバーの60%以上で0.8以上です。

サーバー・スコープ・スマート・ルール

サーバー・スコープ・スマート・ルールは、スマート・ルールと関連付けられたポリシーが実行されるローカルWebLogic Serverインスタンスにのみ適用されるルールです。サーバー・スコープ・スマート・ルールを含むポリシーは、管理サーバーまたはドメイン内の個々の管理対象サーバーで実行できます。WebLogic診断フレームワーク(WLDF)にパッケージされているサーバー・スコープ・スマート・ルールのリストと要約は表A-2を参照してください。

表A-2 管理対象サーバー・スコープ・スマート・ルールのサマリー

保存ウィンドウの経過後に評価されるスマート・ルール trueが返される条件

ServerLowIdleThreads

ローカル・サーバーの平均ThreadPoolRuntimeMBean.ExecuteThreadIdleCount値が下限しきい値以下である場合。

ServerHighThroughput

ローカル・サーバーの平均ThreadPoolRuntimeMBean.Throughput値が上限しきい値以上である場合。

ServerGenericMetricRule

ローカルJVM内のJMXを通じて認識可能なメトリックの平均値が、しきい値のある比較条件を満たす場合。

ServerLowPendingUserRequests

ローカル・サーバーの平均ThreadPoolRuntimeMBean.PendingUserRequestCount値が下限しきい値未満である場合。

ServerLowProcessCpuLoadAverage

ローカル・サーバーのjava.lang:type=OperatingSystem MXBeanのProcessCpuLoadメトリックの平均値が下限しきい値未満である場合。

ServerHighSystemLoadAverage

ローカル・サーバーのjava.lang:type=OperatingSystem MXBeanのSystemLoadAverageメトリックの平均値が上限しきい値以上である場合。

ServerLowQueueLength

ローカル・サーバーの平均ThreadPoolRuntimeMBean.QueueLength値が下限しきい値未満である場合。

ServerLowThroughput

ローカル・サーバーの平均ThreadPoolRuntimeMBean.Throughput値が下限しきい値未満である場合。

ServerHighQueueLength

ローカル・サーバーの平均ThreadPoolRuntimeMBean.QueueLength値が上限しきい値以上である場合。

ServerHighSystemCpuLoadAverage

ローカル・サーバーのjava.lang:type=OperatingSystem MXBeanの平均SystemCpuLoad属性が上限しきい値以上である場合。

ServerHighPendingUserRequests

ローカル・サーバーの平均ThreadPoolRuntimeMBean.PendingUserRequestCount値が上限しきい値以上である場合。

ServerLowSystemCpuLoadAverage

ローカル・サーバーのjava.lang:type=OperatingSystem MXBeanの平均SystemCpuLoad属性が下限しきい値未満である場合。

ServerHighHeapFreePercent

ローカル・サーバーの空きヒープの平均割合が上限しきい値以上である場合。

ServerHighStuckThreads

ローカル・サーバーの平均ThreadPoolRuntimeMBean.StuckThreadCount値が上限しきい値以上である場合。

ServerHighProcessCpuLoadAverage

ローカル・サーバーのjava.lang:type=OperatingSystem MXBeanの平均ProcessCpuLoad値が上限しきい値以上である場合。

ServerLowSystemLoadAverage

ローカル・サーバーのjava.lang:type=OperatingSystem MXBeanの平均SystemLoadAverage値が下限しきい値未満である場合。

ServerLowHeapFreePercent

ローカル・サーバーの空きヒープの平均割合が下限しきい値未満である場合。

ServerHighIdleThreads

ローカル・サーバーの平均ThreadPoolRuntimeMBean.ExecuteThreadIdleCount値が上限しきい値以上である場合。

ServerLowIdleThreads

ServerLowIdleThreadsスマート・ルールは、ThreadPoolRuntimeMBean.ExecuteThreadIdleCount属性の平均値で示されるアイドル・スレッドの平均数が、ルールを実行中のローカル・サーバー内の指定したしきい値未満であるかどうかを検出します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このスマート・ルールがtrueを返すのは、ThreadPoolRuntimeMBean.ExecuteThreadIdleCount属性の平均値が、指定したしきい値以下になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowIdleThreads("period", "duration", idleThreadsLimit)
パラメータ 説明
period

ExecuteThreadIdleCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

idleThreadsLimit

ExecuteThreadIdleCount属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 5
idleThreadsLimit 0.8

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowIdleThreads("30 seconds","10 minutes",5)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからExecuteThreadIdleCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去5分間において、平均ExecuteThreadIdleCount値がこのサーバー・インスタンスで0.8以下です。

ServerHighThroughput

ServerHighThroughputスマート・ルールは、ルールを実行中のローカル・サーバー内にスループットの増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このスマート・ルールがtrueを返すのは、指定した保存ウィンドウにおけるThreadPoolRuntimeMBean.Throughput属性の平均値が、上限しきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighThroughput("period", "duration", throughputLimit)
パラメータ 説明
period

Throughput値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

throughputLimit

Throughput属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
throughputLimit 100

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighThroughput("30 seconds","10 minutes",100)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからThroughputメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均Throughput値がこのサーバー・インスタンスで100以上です。

ServerGenericMetricRule

ServerGenericMetricRuleスマート・ルールは、サーバー・ランタイムMBeanサーバーを通じて公開されており、他のサーバー・スコープ・スマート・ルールでは提供されていないJMXメトリックの傾向を監視するために使用できる一般的なサーバー・スコープ・スマート・ルールです。このスマート・ルールによって、最近の期間のメトリックの平均値を収集し、指定した比較演算子を使用してしきい値と比較できます。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このスマート・ルールがtrueを返すのは、メトリックの平均値が、指定したしきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

  • 有効なJMX ObjectNameまたはObjectNameパターン

  • 一致する各MBeanインスタンスの値を取得するJava EL式(式は、各MBeanを基準とする属性式)。

  • 指定した比較演算子を使用するブール比較演算子

  • 選択した属性を比較するしきい値

  • メトリックのサンプリング・レートおよび保存ウィンドウ

構文

wls:ServerGenericMetricRule("instancePattern", "attribute", "operation", thresholdValue, "period", "duration")
パラメータ 説明
instancePattern

有効なJMX ObjectNameまたはObjectNameパターン

attribute

instancePatternに一致する各MBeanインスタンスの値を取得するJava EL式(式は、各MBeanを基準とする属性式)。

たとえば、MBeanがServerRuntimeMBeanである場合、式'OpenSocketsCurrentCount'は、ServerRuntimeMBeanOpenSocketsCurrentCount属性の値を取得します。これに対して、式'HealthState.State'は、そのMBeanのHealthState子オブジェクトのState値を取得します。

operation

ブール比較演算子: <<===>=または>

thresholdValue

指定した比較演算子を使用して、選択した属性を比較するためのしきい値。

period

メトリック値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
instancePattern java.lang:type=OperatingSystem
attribute ProcessCpuLoad
operation >=
thresholdValue 0.9
period 30
duration 10

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerGenericMetricRule("java.lang:type=OperatingSystem","ProcessCpuLoad",">=",0.9,"30 seconds","10 minutes")

このスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにターゲット・サーバー・インスタンスのProcessCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件でこのスマート・ルールはtrueに評価されます。

    過去10分間において、OperatingSystemMXBeanProcessCpuLoadの平均値がこのサーバー・インスタンスで0.9以上です。

ServerLowPendingUserRequests

ServerLowPendingUserRequestsスマート・ルールは、ThreadPoolRuntimeMBean.PendingUserRequestCount属性の値で示される、ルールを実行中のローカル・サーバー内にある保留中のユーザー・リクエストの平均数を判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このスマート・ルールがtrueを返すのは、指定した保存ウィンドウにおけるThreadPoolRuntimeMBean.PendingUserRequestCount属性の平均値が、下限しきい値未満になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowPendingUserRequests("period", "duration", pendingRequestsLimit)
パラメータ 説明
period

PendingUserRequestCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

pendingRequestsLimit

PendingUserRequestCount属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 15
pendingRequestsLimit 5

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowPendingUserRequests("30 seconds","15 minutes",5)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからPendingUserRequestCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件が存在する場合、trueに評価されます。

    過去15分間において、平均PendingUserRequestCount値がこのサーバー・インスタンスで5未満です。

ServerLowProcessCpuLoadAverage

ServerLowProcessCpuLoadAverageスマート・ルールは、ルールを実行中のローカル・サーバー・インスタンス内に平均システム負荷の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した時間間隔におけるjava.lang:type=OperatingSystem MXBeanのProcessCpuLoadメトリックの平均値が、指定したしきい値未満になった場合です。

ノート:

ProcessCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getProcessCpuLoad--を参照してください。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowProcessCpuLoadAverage("period", "duration", processCpuLoadLimit)
パラメータ 説明
period

ProcessCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

processCpuLoadLimit

ProcessCpuLoad属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 15
processCpuLoadLimit 0.2

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowProcessCpuLoadAverage("30 seconds","15 minutes",0.2)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからProcessCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去15分間において、平均ProcessCpuLoad値がこのサーバー・インスタンスで0.2未満です。

ServerHighSystemLoadAverage

ServerHighSystemLoadAverageスマート・ルールは、ルールを実行中のローカル・サーバー内に平均システム負荷の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した間隔におけるローカル・サーバー・インスタンスのjava.lang:type=OperatingSystem MXBeanのSystemLoadAverageメトリックの平均値が、特定の上限しきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

ノート:

SystemLoadAverageメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、http://docs.oracle.com/javase/8/docs/api/java/lang/management/OperatingSystemMXBean.html#getSystemLoadAverage--を参照してください。

構文

wls:ServerHighSystemLoadAverage("period", "duration", loadLimit)
パラメータ 説明
period

SystemLoadAverage値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

loadLimit

SystemLoadAverage属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 5
loadLimit 0.8

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighSystemLoadAverage("30 seconds","5 minutes",0.8)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスでSystemLoadAverageメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去5分間において、平均SystemLoadAverage値がこのサーバー・インスタンスでの収集で0.8以上です。

ServerLowQueueLength

ServerLowQueueLengthスマート・ルールは、ThreadPoolRuntimeMBean.QueueLengthメトリックの値で示される、ルールを実行中のローカル・サーバー内にある平均スレッド・プール・キュー長の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した間隔におけるローカル・サーバー・インスタンスのThreadPoolRuntimeMBean.QueueLength属性の平均値が、特定の下限しきい値未満になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowQueueLength("period", "duration", queueLengthLimit)
パラメータ 説明
period

QueueLength値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

queueLengthLimit

QueueLength属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 15
queueLengthLimit 5

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowQueueLength("30 seconds","15 minutes",5)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからQueueLengthメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去15分間において、平均QueueLength値がこのサーバー・インスタンスで5未満です。

ServerLowThroughput

ServerLowThroughputスマート・ルールは、ルールを実行中のローカル・サーバー内に平均スループットの減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した間隔におけるローカル・サーバーのThreadPoolRuntimeMBean.Throughput属性の平均値が、指定した下限しきい値未満になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowThroughput("period", "duration", throughputLimit)
パラメータ 説明
period

Throughput値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

throughputLimit

Throughput属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 15
idleThreadsLimit 5

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowThroughput("30 seconds","15 minutes",5)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからThroughputメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去15分間において、平均Throughput値がこのサーバー・インスタンスで5未満です。

ServerHighQueueLength

ServerHighQueueLengthスマート・ルールは、ThreadPoolRuntimeMBean.QueueLength属性の値で示される、ルールを実行中のローカル・サーバー内にある平均スレッド・プール・キュー長の増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、特定の時間間隔におけるThreadPoolRuntimeMBean.QueueLength属性の平均値が、特定の上限しきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighQueueLength("period", "duration", queueLengthLimit)
パラメータ 説明
period

QueueLength値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

queueLengthLimit

QueueLength属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
queueLengthLimit 100

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighQueueLength("30 seconds","10 minutes",100)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからQueueLengthメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均QueueLength値がこのサーバー・インスタンスで100以上です。

ServerHighSystemCpuLoadAverage

ServerHighSystemCpuLoadAverageスマート・ルールは、ルールを実行中のローカル・サーバー内に平均システムCPU負荷の増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、特定の時間間隔におけるjava.lang:type=OperatingSystem MXBeanのSystemCpuLoad属性の平均値が、特定の上限しきい値以上になった場合です。

ノート:

SystemCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getSystemCpuLoad--を参照してください。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighSystemCpuLoadAverage("period", "duration", systemCpuLoadLimit)
パラメータ 説明
period

SystemCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

systemCpuLoadLimit

SystemCpuLoad属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
systemCpuLoadLimit 0.8

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighSystemCpuLoadAverage("30 seconds","10 minutes",0.8)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからSystemCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均SystemCpuLoad値がこのサーバー・インスタンスで0.8以上です。

ServerHighPendingUserRequests

ServerHighPendingUserRequestsスマート・ルールは、ThreadPoolRuntimeMBean.PendingUserRequestCount属性の値で示される、ルールを実行中のローカル・サーバー内にある保留中のユーザー・リクエストの数の増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、特定の間隔におけるThreadPoolRuntimeMBean.PendingUserRequestCount属性の平均値が、特定のしきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighPendingUserRequests("period", "duration", pendingRequestsLimit)
パラメータ 説明
period

PendingUserRequestCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

pendingRequestsLimit

PendingUserRequestCount属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
pendingRequestsLimit 100

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighPendingUserRequests("30 seconds","10 minutes",100)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからPendingUserRequestCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均PendingUserRequestCount値がこのサーバー・インスタンスで100以上です。

ServerLowSystemCpuLoadAverage

ServerLowSystemCpuLoadAverageスマート・ルールは、ルールを実行中のローカル・サーバー内に平均システムCPU負荷の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、特定の間隔におけるjava.lang:type=OperatingSystem MXBeanのSystemCpuLoadメトリックの平均値が、指定した下限しきい値未満になった場合です。

ノート:

SystemCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getSystemCpuLoad--を参照してください。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowSystemCpuLoadAverage("period", "duration", systemCpuLoadLimit)
パラメータ 説明
period

SystemCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

systemCpuLoadLimit

SystemCpuLoad属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 15
systemCpuLoadLimit 0.8

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowSystemCpuLoadAverage("30 seconds","15 minutes",0.8)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからSystemCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去15分間において、平均SystemCpuLoad値がこのサーバー・インスタンスで0.8未満です。

ServerHighHeapFreePercent

ServerHighHeapFreePercentスマート・ルールは、ルールを実行中のローカル・サーバー内にヒープ・ストレスの増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、特定の時間間隔における平均JVMRuntimeMBean.HeapFreePercent値が、指定した上限しきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighHeapFreePercent("period", "duration", percentFreeLimit)
パラメータ 説明
period

JVM空きヒープ率の値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

percentFreeLimit

JVM空きヒープ率の上限しきい値として設定する値(0.0から100.0の間のfloat値として指定)

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
percentFreeLimit 60

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighHeapFreePercent("30 seconds","10 minutes",60)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからJVM空きヒープ率の値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均JVM空きヒープ値がこのサーバー・インスタンスで60%以上です。

ServerHighStuckThreads

ServerHighStuckThreadsスマート・ルールは、ThreadPoolRuntimeMBean.StuckThreadCount属性の値で示される、ルールを実行中のローカル・サーバー内にあるスタック・スレッドの平均数に基づいて、サーバー・ストレスの増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、特定の時間間隔におけるThreadPoolRuntimeMBean.StuckThreadCount属性の平均値が、指定したしきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighStuckThreads("period", "duration", stuckThreadsLimit)
パラメータ 説明
period

StuckThreadCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

stuckThreadsLimit

StuckThreadCount属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
stuckThreadsLimit 5

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighStuckThreads("30 seconds","10 minutes",5)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからStuckThreadCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均StuckThreadCount値がこのサーバー・インスタンスで5以上です。

ServerHighProcessCpuLoadAverage

ServerHighProcessCpuLoadAverageスマート・ルールは、ルールを実行中のローカル・サーバー内に平均システム負荷の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した間隔におけるjava.lang:type=OperatingSystem MXBeanの平均ProcessCpuLoad値が、指定したしきい値以上になった場合です。

ノート:

ProcessCpuLoadメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、https://docs.oracle.com/javase/8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getProcessCpuLoad--を参照してください。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighProcessCpuLoadAverage("period", "duration", processCpuLoadLimit)
パラメータ 説明
period

ProcessCpuLoad値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

processCpuLoadLimit

ProcessCpuLoad属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 5
processCpuLoadLimit 0.8

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighProcessCpuLoadAverage("30 seconds","5 minutes",0.8)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからProcessCpuLoadメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去5分間において、平均ProcessCpuLoad値がこのサーバー・インスタンスで0.8以上です。

ServerLowSystemLoadAverage

ServerLowSystemLoadAverageスマート・ルールは、ルールを実行中のローカル・サーバー内に平均システム負荷の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した間隔におけるjava.lang:type=OperatingSystem MXBeanのSystemLoadAverageメトリックの値が、指定した下限しきい値未満になった場合です。

ノート:

SystemLoadAverageメトリックの値は、プラットフォーム固有であり、すべてのプラットフォームで使用できるわけではありません。このメトリックの取得元のMXBean属性については、http://docs.oracle.com/javase/8/docs/api/java/lang/management/OperatingSystemMXBean.html#getSystemLoadAverage--を参照してください。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowSystemLoadAverage("period", "duration", loadLimit)
パラメータ 説明
period

SystemLoadAverage値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

loadLimit

SystemLoadAverage属性の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 15
loadLimit 0.2

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowSystemLoadAverage("30 seconds","15 minutes",0.2)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 15分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからSystemLoadAverageメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去15分間において、平均SystemLoadAverage値がこのサーバー・インスタンスで0.2未満です。

ServerLowHeapFreePercent

ServerLowHeapFreePercentスマート・ルールは、ルールを実行中のローカル・サーバー内にヒープ・ストレスの増加が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した時間間隔における平均JVMRuntimeMBean.HeapFreePercent値が、指定した下限しきい値未満になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerLowHeapFreePercent("period", "duration", percentFreeLimit)
パラメータ 説明
period

Java空きヒープ率の値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

percentFreeLimit

Java空きヒープ率の下限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 5
percentFreeLimit 20

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerLowHeapFreePercent("30 seconds","5 minutes",20)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 5分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからJava空きヒープ率の値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去5分間において、平均Java空きヒープ率の値がこのサーバー・インスタンスで20%未満です。

ServerHighIdleThreads

ServerHighIdleThreadsスマート・ルールは、ThreadPoolRuntimeMBean.ExecuteThreadIdleCount属性で示されるアイドル・スレッドの増加を測定して、ルールを実行中のローカル・サーバー内にある平均システム負荷の減少が存在するかどうかを判断します。

管理対象サーバーまたは管理サーバーでこのスマート・ルールをターゲットにできます。

グループ: サーバー

説明

このルールがtrueを返すのは、指定した保存ウィンドウにおけるThreadPoolRuntimeMBean.ExecuteThreadIdleCount属性の平均値が、指定したしきい値以上になった場合です。

このスマート・ルールを使用するには、次の項目を指定します。

構文

wls:ServerHighIdleThreads("period", "duration", idleThreadsLimit)
パラメータ 説明
period

ExecuteThreadIdleCount値のサンプリング・レート(Stringで表現)。たとえば、30sは、このメトリックが30秒ごとにサンプリングされることを示します。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は30sです。

このパラメータの指定方法の詳細は、「サンプリング・レート」を参照してください。

duration

収集したサンプルを保持する期間(Stringで表現)。

  • デフォルトの時間単位は、秒です。

  • デフォルト値は、10mです。

このパラメータの指定方法の詳細は、「保存ウィンドウ」を参照してください。

idleThreadsLimit

ExecuteThreadIdleCount属性の上限しきい値として設定する値。

この例に示されているスマート・ルールは、次の入力パラメータを使用します。

パラメータ
period 30
duration 10
idleThreadsLimit 20

前述のパラメータを使用するスマート・ルールは、次のように表現されます。

wls:ServerHighIdleThreads("30 seconds","10 minutes",20)

この例のスマート・ルールでは、次の処理が実行されます。

  1. 10分の保存ウィンドウの間、30秒ごとにローカル・サーバー・インスタンスからExecuteThreadIdleCountメトリックの値をサンプリングします。

  2. 保存ウィンドウの終わりに、次の条件がtrueに評価される場合、関連するアクションを起動します。

    過去10分間において、平均ExecuteThreadIdleCount値がこのサーバー・インスタンスで20以上です。