すべてのプロダクト
Search
ドキュメントセンター

Resource Orchestration Service:ALIYUN::CMS::ResourceMetricRule

最終更新日:Jan 16, 2025

ALIYUN::CMS::ResourceMetricRule は、リソースメトリクスのしきい値トリガーアラートルールを作成するために使用されます。

構文

{
  "Type": "ALIYUN::CMS::ResourceMetricRule",
  "Properties": {
    "NoEffectiveInterval": String,
    "ContactGroups": List,
    "SilenceTime": Integer,
    "RuleId": String,
    "Period": Integer,
    "Prometheus": Map,
    "Labels": List,
    "EffectiveInterval": String,
    "NoDataPolicy": String,
    "Namespace": String,
    "MetricName": String,
    "DeletionForce": Boolean,
    "Escalations": Map,
    "EmailSubject": String,
    "CompositeExpression": Map,
    "Webhook": String,
    "Resources": List,
    "RuleName": String,
    "Interval": Integer
  }
}

プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ContactGroups

List

はい

はい

アラート連絡グループ。

CloudMonitor は、アラート連絡グループに属するアラート連絡先にアラート通知を送信します。

説明

アラート連絡グループには、1 つ以上のアラート連絡先を含めることができます。 アラート連絡先とアラート連絡グループの作成方法の詳細については、「PutContact」および「PutContactGroup」をご参照ください。

Escalations

Map

はい

はい

アラートの詳細。

詳細については、「Escalations プロパティ」をご参照ください。

MetricName

String

はい

はい

メトリック名。

メトリック名のクエリ方法の詳細については、「付録 1:メトリック」をご参照ください。

説明

ハイブリッドクラウドモニタリングの Prometheus アラートルールを作成する場合、このプロパティを名前空間名に設定する必要があります。 名前空間名のクエリ方法の詳細については、「DescribeHybridMonitorNamespaceList」をご参照ください。

Namespace

String

はい

はい

クラウドサービスの名前空間。

クラウドサービスの名前空間のクエリ方法の詳細については、「付録 1:メトリック」をご参照ください。

説明

ハイブリッドクラウドモニタリングの Prometheus アラートルールを作成する場合は、このプロパティを acs_prometheus に設定する必要があります。

Resources

List

はい

はい

リソースに関する情報。

例:[{"instanceId":"i-uf6j91r34rnwawoo****"}] および [{"userId":"100931896542****"}]。 リソースのクエリに使用されるサポートされているディメンションの詳細については、「付録 1:メトリック」をご参照ください。

CompositeExpression

Map

いいえ

はい

複数のメトリックのトリガー条件。

詳細については、「CompositeExpression プロパティ」をご参照ください。

説明

単一メトリックと複数メトリックのトリガー条件は相互に排他的です。 リクエストで単一メトリックと複数メトリックのトリガー条件を指定することはできません。

DeletionForce

Boolean

いいえ

はい

アラートルールを強制的に削除するかどうかを指定します。

有効な値:

  • true

  • false

EffectiveInterval

String

いいえ

はい

アラートルールが有効な期間。

例:00:00-23:59。

EmailSubject

String

いいえ

はい

アラート通知メールの件名。

なし。

Interval

Integer

いいえ

はい

アラートルールに基づいてアラートがトリガーされる間隔。

単位:秒。

説明

メトリックの統計期間のクエリ方法の詳細については、「付録 1:メトリック」をご参照ください。

Labels

List

いいえ

はい

タグに関する情報。

詳細については、「Labels プロパティ」をご参照ください。

NoDataPolicy

String

いいえ

はい

監視データが見つからない場合にアラートを処理するために使用される方法。

有効な値:

  • KEEP_LAST_STATE(デフォルト):操作を実行しません。

  • INSUFFICIENT_DATA:「データ不足」という内容のアラートをトリガーします。

  • OK: ステータスが正常であると見なします。

NoEffectiveInterval

String

いいえ

はい

アラート ルールが無効になる期間です。

例:00:00-23:59。

NoEffectiveInterval

String

いいえ

はい

アラートルールが無効な期間。

単位:秒。デフォルト値は、メトリックの監視データが収集される間隔です。

説明

メトリックの統計期間を照会する方法の詳細については、「付録 1:メトリック」をご参照ください。

Period

Integer

いいえ

はい

メトリックの統計期間。

詳細については、「Prometheus プロパティ」をご参照ください。

説明

Hybrid Cloud Monitoring の Prometheus アラートルールを作成するときは、このプロパティを指定する必要があります。

RuleId

String

いいえ

いいえ

アラート ルールの ID。

新しい ID または既存のアラート ルールの ID を指定できます。アラート ルールの ID を照会する方法の詳細については、「DescribeMetricRuleList」をご参照ください。

説明

新しい ID を指定すると、しきい値によってトリガーされるアラート ルールが作成されます。

Prometheus

Map

いいえ

はい

Prometheus アラートルールに関する情報。

CloudMonitor で新しい名前または既存のアラート ルールの名前を指定できます。アラート ルールの名前をクエリする方法の詳細については、「DescribeMetricRuleList」をご参照ください。

説明

新しい名前を指定すると、しきい値によってトリガーされるアラート ルールが作成されます。

SilenceTime

整数

いいえ

はい

トリガー条件が満たされていても、新しいアラート通知が送信されないミュート期間。

単位:秒。デフォルト値:86400。

説明

ミュート期間の終了後もアラートがクリアされない場合、CloudMonitor はアラート通知を再送信します。

Webhook

文字列

いいえ

はい

アラート ルールに基づいてアラートがトリガーされたときに POST リクエストが送信されるコールバック URL です。

なし。

Prometheus 構文

"Prometheus": {
  // 注釈
  "Annotations": List,
  // PromQL クエリ
  "PromQL": String,
  // 回数
  "Times": Integer,
  // レベル
  "Level": String
}

Prometheus プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

レベル

文字列

はい

はい

アラートレベル。

有効な値:

  • クリティカル

  • 警告

  • 情報

PromQL

文字列

はい

はい

PromQL クエリステートメント。

なし。

回数

整数

はい

はい

連続トリガーの回数。メトリック値がトリガー条件を満たす回数がこのプロパティの値に達すると、CloudMonitor はアラート通知を送信します。

なし。

注釈

リスト

いいえ

はい

Prometheus アラート ルールの注釈。Prometheus アラートがトリガーされると、システムは注釈のキーと値をレンダリングします。

詳細については、「注釈プロパティ」をご参照ください。

説明

このプロパティは、Prometheus プロパティの Annotation プロパティと同じ効果があります。

注釈構文

"Annotations": [
  {
    "Value": String, // 値
    "Key": String // キー
  }
]

注釈プロパティ

プロパティ

必須

編集可能

説明

制約

キー

文字列

いいえ

はい

注釈のキー。

なし。

文字列

いいえ

はい

注釈の値。

なし。

ラベルの構文

"Labels": [
  {
    "Value": String, // 値
    "Key": String // キー
  }
]

ラベルのプロパティ

プロパティ

種類

必須

編集可能

説明

制約

キー

文字列

はい

はい

タグキー。

なし。

文字列

いいえ

はい

タグ値。

なし。

エスカレーション構文

"Escalations": {
  "Critical": Map, // 重大
  "Info": Map, // 情報
  "Warn": Map // 警告
}

エスカレーションのプロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

クリティカル

マップ

いいえ

はい

クリティカルレベルのアラートの詳細。

詳細については、クリティカルのプロパティ をご参照ください。

情報

マップ

いいえ

はい

情報レベルのアラートの詳細。

詳細については、情報のプロパティ をご参照ください。

警告

マップ

いいえ

はい

警告レベルのアラートの詳細。

詳細については、警告のプロパティ をご参照ください。

重要な構文

"Critical": {
  // 比較演算子
  "ComparisonOperator": String,
  // 回数
  "Times": Integer,
  // 統計
  "Statistics": String,
  // しきい値
  "Threshold": String
}

重要なプロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ComparisonOperator

String

はい

はい

危険レベルのアラートのしきい値とメトリック値を比較するために使用される演算子。

有効な値:

  • GreaterThanOrEqualToThreshold: しきい値以上

  • GreaterThanThreshold: しきい値より大きい

  • LessThanOrEqualToThreshold: しきい値以下

  • LessThanThreshold: しきい値より小さい

  • NotEqualToThreshold: しきい値と等しくない

  • GreaterThanYesterday: 昨日の同時刻のメトリック値より大きい

  • LessThanYesterday: 昨日の同時刻のメトリック値より小さい

  • GreaterThanLastWeek: 前週の同時刻のメトリック値より大きい

  • LessThanLastWeek: 前週の同時刻のメトリック値より小さい

  • GreaterThanLastPeriod: 前の監視サイクルのメトリック値より大きい

  • LessThanLastPeriod: 前の監視サイクルのメトリック値より小さい

説明

危険、警告、情報の少なくとも 1 つの警告レベルを設定し、警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Statistics

String

はい

はい

危険レベルのアラートの統計手法。

有効な値:

  • Maximum: 最大値

  • Minimum: 最小値

  • Average: 平均値

  • Availability: 可用性

説明

危険、警告、情報の少なくとも 1 つの警告レベルを設定し、警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Threshold

String

はい

はい

危険レベルのアラートのしきい値。

説明

危険、警告、情報の少なくとも 1 つの警告レベルを設定し、警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Times

Integer

はい

はい

危険レベルのアラートがトリガーされる前に、メトリック値がトリガー条件を満たす必要がある連続回数。

説明

危険、警告、情報の少なくとも 1 つの警告レベルを設定し、警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

情報構文

"Info": {
  // 比較演算子
  "ComparisonOperator": String,
  // 回数
  "Times": Integer,
  // 統計
  "Statistics": String,
  // しきい値
  "Threshold": String
}

情報プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ComparisonOperator

String

はい

はい

情報レベルのアラートのしきい値とメトリック値を比較するために使用される演算子。

有効な値:

  • GreaterThanOrEqualToThreshold: しきい値以上

  • GreaterThanThreshold: しきい値より大きい

  • LessThanOrEqualToThreshold: しきい値以下

  • LessThanThreshold: しきい値より小さい

  • NotEqualToThreshold: しきい値と等しくない

  • GreaterThanYesterday: 昨日の同時刻のメトリック値より大きい

  • LessThanYesterday: 昨日の同時刻のメトリック値より小さい

  • GreaterThanLastWeek: 前週の同時刻のメトリック値より大きい

  • LessThanLastWeek: 前週の同時刻のメトリック値より小さい

  • GreaterThanLastPeriod: 前の監視サイクルのメトリック値より大きい

  • LessThanLastPeriod: 前の監視サイクルのメトリック値より小さい

説明

重大、警告、情報の少なくとも 1 つのアラートレベルを設定し、アラートレベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Statistics

String

はい

はい

情報レベルのアラートの統計手法。

有効な値:

  • Maximum: 最大値

  • Minimum: 最小値

  • Average: 平均値

  • Availability: 可用性レート

説明

重大、警告、情報の少なくとも 1 つのアラートレベルを設定し、アラートレベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Threshold

String

はい

はい

情報レベルのアラートのしきい値。

説明

重大、警告、情報の少なくとも 1 つのアラートレベルを設定し、アラートレベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Times

Integer

はい

はい

情報レベルのアラートがトリガーされる前に、メトリック値がトリガー条件を満たす必要がある連続回数。

説明

重大、警告、情報の少なくとも 1 つのアラートレベルを設定し、アラートレベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

警告構文

"Warn": {
  // 比較演算子
  "ComparisonOperator": String,
  // 回数
  "Times": Integer,
  // 統計
  "Statistics": String,
  // しきい値
  "Threshold": String
}

警告プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ComparisonOperator

String

はい

はい

警告レベルのアラートのしきい値とメトリック値を比較するために使用される演算子。

有効な値:

  • GreaterThanOrEqualToThreshold: しきい値以上

  • GreaterThanThreshold: しきい値より大きい

  • LessThanOrEqualToThreshold: しきい値以下

  • LessThanThreshold: しきい値より小さい

  • NotEqualToThreshold: しきい値と等しくない

  • GreaterThanYesterday: 昨日の同時刻のメトリック値より大きい

  • LessThanYesterday: 昨日の同時刻のメトリック値より小さい

  • GreaterThanLastWeek: 前週の同時刻のメトリック値より大きい

  • LessThanLastWeek: 前週の同時刻のメトリック値より小さい

  • GreaterThanLastPeriod: 前の監視サイクルのメトリック値より大きい

  • LessThanLastPeriod: 前の監視サイクルのメトリック値より小さい

説明

重大、警告、情報の少なくとも 1 つの警告レベルを設定し、その警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Statistics

String

はい

はい

警告レベルのアラートの統計手法。

有効な値:

  • Maximum: 最大値

  • Minimum: 最小値

  • Average: 平均値

  • Availability: 可用性レート

説明

重大、警告、情報の少なくとも 1 つの警告レベルを設定し、その警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Threshold

String

はい

はい

警告レベルのアラートのしきい値。

説明

重大、警告、情報の少なくとも 1 つの警告レベルを設定し、その警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

Times

Integer

はい

はい

警告レベルのアラートがトリガーされる前に、メトリック値がトリガー条件を満たす必要がある連続回数。

説明

重大、警告、情報の少なくとも 1 つの警告レベルを設定し、その警告レベルの Statistics、ComparisonOperator、Threshold、および Times プロパティを指定する必要があります。

複合式の構文

"CompositeExpression": {
  "Times": Integer, // 回数
  "ExpressionRaw": String, // 式 (未処理)
  "ExpressionListJoin": String, // 式リストの結合子
  "Level": String, // レベル
  "ExpressionList": List // 式リスト
}

CompositeExpression プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Level

String

はい

はい

アラートレベル。

有効な値:

  • Critical

  • Warn

  • Info

Times

Integer

はい

はい

連続トリガー回数。メトリック値がトリガー条件を満たす回数がこのプロパティの値に達すると、CloudMonitor はアラート通知を送信します。

なし。

ExpressionList

List

いいえ

はい

標準モードで作成されたトリガー条件。

詳細については、「ExpressionList プロパティ」をご参照ください。

ExpressionListJoin

String

いいえ

はい

複数のメトリックのトリガー条件間の関係。

有効な値:

  • &&: すべてのメトリックがトリガー条件を満たす場合にのみ、アラートがトリガーされます。

  • ||: いずれかのメトリックがトリガー条件を満たすと、アラートがトリガーされます。

ExpressionRaw

String

いいえ

はい

式を使用して作成されたトリガー条件。

次のシナリオでは、式を使用してトリガー条件を作成できます。

  • 特定のリソースのアラートブラックリストを構成します。たとえば、$instanceId != 'i-io8kfvcpp7x5****' && $Average > 50 を指定した場合、i-io8kfvcpp7x5**** インスタンスの平均メトリック値が 50 を超えてもアラートはトリガーされません。

  • アラートルールで指定されたインスタンスに特別なアラートしきい値を指定します。たとえば、$Average > ($instanceId == 'i-io8kfvcpp7x5****'? 80: 50) を指定した場合、i-io8kfvcpp7x5**** インスタンスの平均メトリック値が 80 を超えるか、他のインスタンスの平均メトリック値が 50 を超えると、アラートがトリガーされます。

  • メトリック値がしきい値を超えるインスタンスの数を制限します。たとえば、count($Average > 20) > 3 を指定した場合、3 つ以上のインスタンスの平均メトリック値が 20 を超えた場合にのみ、アラートがトリガーされます。

Prometheus 構文

"ExpressionList": [
  {
    "MetricName": String, // メトリック名
    "ComparisonOperator": String, // 比較演算子
    "Period": Integer, // 期間
    "Statistics": String, // 統計
    "Threshold": String // しきい値
  }
]

ExpressionList プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ComparisonOperator

String

はい

はい

メトリック値と閾値を比較するために使用される演算子。

有効な値:

  • GreaterThanOrEqualToThreshold: 閾値以上

  • GreaterThanThreshold: 閾値より大きい

  • LessThanOrEqualToThreshold: 閾値以下

  • LessThanThreshold: 閾値より小さい

  • NotEqualToThreshold: 閾値と等しくない

  • GreaterThanYesterday: 昨日の同時刻のメトリック値より大きい

  • LessThanYesterday: 昨日の同時刻のメトリック値より小さい

  • GreaterThanLastWeek: 前週の同時刻のメトリック値より大きい

  • LessThanLastWeek: 前週の同時刻のメトリック値より小さい

  • GreaterThanLastPeriod: 前の監視サイクルのメトリック値より大きい

  • LessThanLastPeriod: 前の監視サイクルのメトリック値より小さい

MetricName

String

はい

はい

クラウドサービスのメトリック名。

なし。

Period

Integer

はい

はい

メトリックの集計期間。

単位:秒。

Statistics

String

はい

はい

メトリックの統計方法。

有効な値:

  • $Maximum: 最大値。

  • $Minimum: 最小値。

  • $Average: 平均値。

  • $Availability: 可用性。ほとんどの場合、可用性はサイト監視に使用されます。

説明

$ はメトリックのプレフィックスです。 CloudMonitor でサポートされているクラウドサービスの詳細については、付録 1: メトリックをご参照ください。

Threshold

String

はい

はい

アラート閾値。

なし。

戻り値

Fn::GetAtt

  • RuleId: アラート ルールの ID。

  • RuleName: アラート ルールの名前。

Prometheus プロパティ

JSON 形式

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ContactGroups": {
      "Type": "Json",
      "Description": "アラート連絡グループ。\nアラート通知は、アラート連絡グループに属する連絡先に送信されます。\n注記: アラート連絡グループには、1 つ以上のアラート連絡先を含めることができます。アラート連絡先とアラート連絡グループの作成方法については、「PutContact」および「PutContactGroup」をご参照ください。",
      "MinLength": 1
    },
    "Namespace": {
      "Type": "String",
      "Description": "クラウドサービスの名前空間。\nクラウドサービスの名前空間のクエリ方法については、「付録 1: メトリクス」をご参照ください。\n注記: Hybrid Cloud Monitoring の Prometheus アラートルールを作成する場合は、このパラメーターを acs_prometheus に設定する必要があります。",
    },
    "MetricName": {
      "Type": "String",
      "Description": "メトリクスの名前。\nメトリクスの名前のクエリ方法については、「付録 1: メトリクス」をご参照ください。\n注記: Hybrid Cloud Monitoring の Prometheus アラートルールを作成する場合は、このパラメーターを名前空間の名前に設定する必要があります。名前空間の名前を取得する方法については、「DescribeHybridMonitorNamespaceList」をご参照ください。",
    },
    "Escalations": {
      "Type": "Json",
      "Description": "重大、警告、情報の少なくとも 1 つの警告レベルを選択する必要があります。",
      "MinLength": 1
    },
    "Resources": {
      "Type": "Json",
      "Description": "リソースに関する情報。\n例: [{\"instanceId\":\"i-uf6j91r34rnwawoo****\"}] および [{\"userId\":\"100931896542****\"}].\nリソースのクエリに使用されるサポートされているディメンションについては、「付録 1: メトリクス」をご参照ください。",
      "MinLength": 1
    }
  },
  "Resources": {
    "ResourceMetricRule": {
      "Type": "ALIYUN::CMS::ResourceMetricRule",
      "Properties": {
        "ContactGroups": {
          "Ref": "ContactGroups"
        },
        "Namespace": {
          "Ref": "Namespace"
        },
        "MetricName": {
          "Ref": "MetricName"
        },
        "Resources": {
          "Ref": "Resources"
        },
        "Escalations": {
          "Ref": "Escalations"
        }
      }
    }
  },
  "Outputs": {
    "RuleId": {
      "Description": "アラート ルールの ID。",
      "Value": {
        "Fn::GetAtt": [
          "ResourceMetricRule",
          "RuleId"
        ]
      }
    },
    "RuleName": {
      "Description": "アラート ルールの名前。",
      "Value": {
        "Fn::GetAtt": [
          "ResourceMetricRule",
          "RuleName"
        ]
      }
    }
  }
}