Get the history of an alarm#

指定されたクエリに基づいて、指定されたアラームの履歴を取得します。
アラームの履歴とは、アラームの状態(監視条件を満たした/満たさなくなった)が変化した履歴のことです。
監視データの取得不可通知(nodata_alert)を有効にしたアラームでは、
監視視対象の全仮想サーバから監視データが取得できない状態が発生すると、nodataステータスで履歴として記録されます。
また、監視データが再度取得できるようになった場合は resolvedステータスで履歴が記録されます。
アラームの無効(enabledパラメータがfalse)中にアラームの状態が変化した場合も、履歴として記録されています。
アラームの設定自体を変更した履歴は、本APIでは取得できません。

APIエンドポイント#

リージョン APIエンドポイント
西日本リージョン3の場合 https://telemetry.jp-west-3.cloud.global.fujitsu.com
東日本リージョン3の場合 https://telemetry.jp-east-3.cloud.global.fujitsu.com

HTTPメソッドとURI#

GET

/v4.0/alarm_history/{alarm_id}

HTTPステータスコード#

正常時:200

エラー時:400,401,404,500

リクエストパラメータの説明#

名前 In Type デフォルト値
/必須指定
Description
alarm_id path string 必須 アラームID
X-Auth-Token header string 必須 認証のトークン
start query string 任意 開始日時(3桁のミリ秒を含む13桁のUNIX時刻)
end query string 任意 終了日時(3桁のミリ秒を含む13桁のUNIX時刻)
status query string 任意 特定のアラームの状態を指定し抽出します。
アラームの条件一致、条件不一致、監視データなしなどを設定します。
以下の値が指定できます。
- firing: 条件一致
- resolved: 条件不一致
- nodata: 監視データなし

レスポンスボディ(正常系)の説明#

アラームの履歴が、アラーム発生時間 (timestamp) の降順で返却されます。
各パラメータの説明は以下のとおりです。

名前 Type Description
alarm_id string アラームID
timestamp string アラーム発生時間(YYYY-MM-DDThh:mm:ssZ形式)
state string 発生したアラームの状態
アラームの条件一致の場合は firing、条件不一致の場合は resolved、監視データなしの場合は nodata を示します。
value decimal 状態変化時の監視データの値
アラームの nodata状態が変化した履歴はnullとなります。
instance_id string アラームの状態が変化した仮想サーバのID
aggregate_functionで avg, max, min, sumが指定されているアラームの場合だけ設定されます。
grp_avg, grp_max, grp_min, grp_sumが指定されている場合、またはアラームの nodata状態が変化した履歴は nullとなります。
name string アラーム名
description string アラームの説明
project_id string プロジェクトID
target_type string アラーム設定対象のタイプ
値については、「TargetType」を参照してください。
object_id string アラーム設定対象のオブジェクトID
値については、「TargetType」を参照してください。
metric_type string 監視項目種別
値については、「監視項目」を参照してください。
interval_duration string 監視間隔
from string 集計対象期間
ある監視タイミングにおいて、直近のどれくらいの期間のデータを集計対象とするかを示します。
aggregation_function string 集計関数
集計期間内の監視データの集計方法を示します。
値については、「集計関数」を参照してください。
comparison_function string 比較式
集計値としきい値の比較式(超過、未満)です。
以下の文字列のいずれかが設定されます。
- above
- below
threshold decimal 比較値(しきい値や判定値)
CPUやメモリ使用率を監視項目とする場合は使用率、ネットワーク帯域の場合は Mbpsというように、比較する監視項目に沿った値です。
詳細は「監視項目」を参照してください。
alert_count integer アラーム通知のしきい値
監視条件が満たされた状態が何分続いたら alert を上げるかを設定します。
severity string アラームレベル
enabled bool アラームの状態
有効(true)/無効(false)のどちらかが示されます。
falseに設定されている場合、アラームの評価は継続して実行されますが、アラームが条件を満たしてもアラームアクションが実行されません。
nodata_alert bool 監視データ取得不可時の通知有無
有効の場合は true、無効の場合は falseで設定します。アラームアクションにメール通知を設定している、かつ本項目の設定値が trueの場合、監視条件に合致するデータが取得できない状態を検知するとメール通知を実行します。
alarm_action List<string> アラームアクション
リストが空の場合は何もアクションを実行しません。
設定されている場合は対応したアクションを実行します。
アクションについては以下の設定があります。
- mail (メール通知)
- autoscale (オートスケール)
autoscale_url string オートスケールの実行先
OS::Heat::ScalingPolicy タイプのリソースの signal urlが示されます。

リクエスト例#

curl -H "X-Auth-Token: ImFkbWluVVJMIjogImh0dHA6Ly8xMC4x..." \
 "https://telemetry.jp-west-3.cloud.global.fujitsu.com/v4.0/alarm_history/7d4a2a34..."

レスポンス例#

{
  "action_history": [
    {
      "alarm_id": "8e39017a-211e-b23f-64b3-26247c6175c7",
      "status": "firing",
      "timestamp": "2023-07-12T08:58:00Z",
      "value": 87.21,
      "instance_id": "instance1_id",
      "name": "cpu_test",
      "description": "alert when cpu usage > 80%",
      "project_id": "a6944d763bf64ee6a275f1263fae0352",
      "target_type": "aggregate",
      "object_id": "1a6877a6-ea01-1aa1-09d7-a6cf9939220b",
      "metric_type": "instance.cpu.usage",
      "interval_duration": "1m",
      "from": "5m",
      "aggregation_function": "avg",
      "comparison_function": "above",
      "threshold": 80.0,
      "alert_count": 3,
      "severity": "critical",
      "enabled": true,
      "nodata_alert": false,
      "alarm_action": [
        "mail"
      ]
    },
    {
      "alarm_id": "8e39017a-211e-b23f-64b3-26247c6175c7",
      "status": "resolved",
      "timestamp": "2023-07-12T09:58:00Z",
      "value": 77.21,
      "instance_id": "instance1_id",
      "name": "cpu_test",
      "description": "alert when cpu usage > 80%",
      "project_id": "a6944d763bf64ee6a275f1263fae0352",
      "target_type": "aggregate",
      "object_id": "1a6877a6-ea01-1aa1-09d7-a6cf9939220b",
      "metric_type": "instance.cpu.usage",
      "interval_duration": "1m",
      "from": "5m",
      "aggregation_function": "avg",
      "comparison_function": "above",
      "threshold": 80.0,
      "alert_count": 3,
      "severity": "critical",
      "enabled": true,
      "nodata_alert": false,
      "alarm_action": [
        "mail"
      ]
    },
    {
      "alarm_id": "8e39017a-211e-b23f-64b3-26247c6175c7",
      "status": "nodata",
      "timestamp": "2023-07-12T10:58:00Z",
      "value": null,
      "instance_id": null,
      "name": "cpu_test",
      "description": "alert when cpu usage > 80%",
      "project_id": "a6944d763bf64ee6a275f1263fae0352",
      "target_type": "aggregate",
      "object_id": "1a6877a6-ea01-1aa1-09d7-a6cf9939220b",
      "metric_type": "instance.cpu.usage",
      "interval_duration": "1m",
      "from": "5m",
      "aggregation_function": "avg",
      "comparison_function": "above",
      "threshold": 80.0,
      "alert_count": 3,
      "severity": "critical",
      "enabled": true,
      "nodata_alert": false,
      "alarm_action": [
        "mail"
      ]
    }
  ]
}