本文へスキップ

メトリクスアラートの通知

ホーム画面 > プロジェクト選択 > アイコン サイトマップ > アラート通知 > イベント設定

メトリクスに基づくイベント通知を生成および管理する方法を案内します。 メトリクスイベントは、基本テンプレートより具体的で複雑なイベントを設定する時に使用します。 モニタリング対象で発生する様々なイベントを条件によって定義し、これによって効率的に通知を受けられるように設定できる機能を提供します。

ノート
  • メトリクスの詳細については、次の文書を参照してください。

  • アラート設定権限のあるメンバーのみが利用できます。 メンバー権限の詳細については、次の文書を参照してください

基本画面ガイド

イベント設定 メニューでメトリックスタブを選択します。 ユーザーが追加したメトリクスイベントの一覧を確認し、メトリクスイベントを追加または修正、削除できます。

Event configuration

メトリクスイベント一覧の主な要素は次の通りです。

  • 活性化: 各イベントの有効可否を制御するトグルボタンです。 希望するイベントの通知をオンまたはオフできます。

  • 修正: イベントルールを修正できます。 ルールを更新して、より正確な通知を設定できます。

  • イベント名: イベント名です。 イベント名により、どのようなイベントが発生したかを簡単に区別できます。 イベントが発生して通知を受信すると、そのメッセージのタイトルで表示されます。

  • ルール: 通知を発生させるためのイベント条件です。 各色はCriticalWarningレベルを意味します。

  • 対象: 全体または特定のモニタリング対象で発生するイベントに基づいて通知を受信できます。

  • 発生回数: 設定した時間の間、設定回数だけイベントが発生した場合は、通知を受信します。

  • 解消された通知: CriticalWarningレベルのイベントが正常状態(RECOVERED)に戻る時、通知の受信可否を示します。

  • イベント受信: 通知を受信するチームまたはユーザーグループを示します。

ノート
  • 通知メッセージ設定機能についての詳細は、次の文書を参照してください。

  • メトリクスイベントをJSONファイルで修正または共有できます。 詳細については、次の文書を参照してください。

  • JSONファイルで全体イベント設定を共有できるJSON一括修正JSON 一括ダウンロード機能についての詳細は、次の文書を参照してください。

イベントの追加

メトリクスイベントを追加するには、画面右上にアラート通知追加ボタンを選択します。 イベントの追加画面が表示されたら、ユーザーは次のステップに従って設定を進行できます。

  1. イベント条件の定義: 通知を受け取るためのイベント条件を設定します。

  2. イベント対象の選択: イベントが発生するモニタリング対象を選択します。

  3. 基本情報と通知設定: イベント名とメッセージ、受信対象を設定します。

メトリクスを検索する

イベント設定時にメトリクス情報を簡単に検索して活用できます。

カテゴリ選択指標設定イベント対象の選択項目の「メトリクス検索」からメトリクスを検索し、メトリクス情報を確認します。 選択したメトリクスが画面に適用されます。

イベント条件の定義

通知を受信するためのイベント条件を設定できます。

テンプレート

簡単で迅速なイベント設定のために、モニタリングプラットフォームに合わせたイベントテンプレートを提供します。 希望するテンプレートを選択すると、事前定義されたイベント条件を残りの項目に自動入力します。 テンプレートを使用しない場合は使用しないを選択します。

ノート
  • テンプレートを選択した後、事前定義されたイベント条件はユーザーが直接修正できます。

  • モニタリングプラットフォームによって提供されるテンプレートは異なる場合があります。 提供するテンプレート一覧の詳細については、次の文書を参照してください。

カテゴリ選択

メトリクスデータを区切る単位です。 イベント条件を定義するための必須項目です。

Select Category

カテゴリ選択一覧には名前とデータ収集間隔(1時間5分間など)、キー情報を表示します。 最近3時間の範囲内のプロジェクトで収集中のメトリクスデータを照会し、一覧に表示します。 カテゴリ選択一覧にカテゴリ名が表示されない場合は、直接入力するオプションを選択してカテゴリキーを入力できます。

ノート
  • カテゴリ項目を選択しなければ指標設定を進行できません。

  • カテゴリ情報は分析 > メトリクス照会メニューで確認できます。

指標設定

アラートレベルを選択し、アラートを発生させるイベントのしきい値を設定できます。 1つのルールで複数のレベル(Critical、Warning、Info)を設定することができます。
効果的なモニタリングのためには、同じ指標に対して段階的なしきい値を設定することを推奨します。

Indicator settings

  • アラートレベルは、重大 (Critical)、警告 (Warning)、正常 (Info) のレベルに区分されます。設定したレベルは優先順位に従って動作します。

    Tips

    レベルの動作方式の詳細については、レベル動作ガイド を参照してください。

  • 選択したカテゴリに含まれる指標を選択し、条件を入力してモニタリング基準を設定してください。算術演算、比較演算、論理演算を組み合わせて、希望する条件式を構成できます。

    Tips

    条件式の作成方法および使用可能な演算子については、条件設定ガイド を参照してください。

発生回数

選択した時間の間に設定したイベントが入力回数だけ発生すると、通知を送信します。

Count of event

  • 連続: 入力した回数だけイベントが連続して発生した時に通知を受信できます。

  • 最近: 選択した時間の間に入力した回数だけイベントが連続して発生した時に通知を受信できます。

ノート

Interval値は、選択したカテゴリのデータ収集間隔を意味します。

一時停止

過度のアラート通知の発生を防止できるオプションです。 最初の通知が発生した後、選択した時間の間にアラート通知を送信しません。

Pause alert

ノート

解消された通知機能を有効にした場合は、正常(RECOVERED) ステータス通知を受信した後、選択した時間の間通知を送信しません。

解消された通知

解消された通知オプションを有効にするとイベント履歴メニューで進行中のイベントで表示されます。 CriticalまたはWarningレベルのイベントが解消されると、正常(RECOVERED) ステータスの通知を受信します。 トグルボタンを選択し、機能をオンまたはオフできます。

Resolved notification

ノート
  • このオプションは、通知レベルをCriticalまたはWarningを選択した時に表示されます。

  • イベント履歴メニューの詳細は次の文書を参照してください。

シミュレーション

指標設定で設定したイベント条件をテストできます。 シミュレーションボタンを選択します。

Simulation

  • 照会した時間の間に何回の通知が発生したのか、右上に数字1発生件数を表示します。

  • 数字2赤い点線は指標設定で設定した結果です。

ノート
  • 指標設定についての詳細は、次の文書を参照してください。

  • シミュレーション機能は、最大24時間のデータに基づいてテストできます。

イベント対象の選択

イベントが発生するモニタリング対象を選択します。 入力しない場合は、プロジェクトに含まれるすべてのイベントをモニタリングし、通知を送信します。 これにより、多くの通知が発生する可能性があります。 過度の通知が発生しないように特定の対象を設定します。

Select target

イベント対象は次のタグ(Tag)を基準に特定できます。 タグ(Tag)は、収集対象を区分できる固有の情報を含むデータです。 変更履歴の少ないIP、Oname、Host情報などの値を活用できます。

  • 選択入力: タグ名と演算子を選択し、値を入力してターゲットを特定できます。

    追加: イベント対象を追加できます。 &&(and) または||(or) 条件を選択できます。

  • 直接入力: タグ名と演算子、値を直接入力して対象を特定できます。 このオプションを選択すると、入力欄の下に入力できるタグ情報(タグ選択入力)を提供します。

Tips

次の例を参照して、イベントの対象を設定します。

ex. endsWith(okindName, 'example_name') && container == 'prod.billing'
ex. ${4xxErrorType} == '401'
ノート
  • イベント条件の定義セクションのカテゴリ選択で選択した値によって選択できるタグは異なる場合があります。

  • イベント対象を変更した場合、通知の発生件数が異なる場合があります。 シミュレーションボタンをもう一度実行して結果を確認します。

  • イベント対象の選択および演算子の使用についての詳細は、次の文書を参照してください。

基本情報と通知設定

イベント名とメッセージ、通知受信対象を設定します。

Basic information

  • イベント活性化:現在のイベントを活性化することができます。

  • イベント名: 通知メッセージのタイトルとして使用され、識別しやすい名前で入力します。

  • メッセージ: ユーザーに配信する通知メッセージの内容を入力します。 変数を使用して動的データを包含できます。

    Message example

    • ${Tag}または${Field}を入力してメッセージに変数を適用できます。 変数は選択したメトリクスデータカテゴリに含まれる値である必要があります。 メトリックス照会メニューで入力できる${Tag}または${Field}変数を確認できます。

    • 時間アイコンボタンをクリックすると、以前に入力したメッセージの履歴を確認できます。

    Tips

    メッセージ入力画面に${Tag}または${Field}変数を入力してメッセージを作成できます。

    分析 > メトリックス照会メニューでカテゴリを選択した上で入力できる${Tag}または${Field}変数を確認します。 現在のイベントテンプレートのカテゴリ名前は、次の文書カテゴリ項目を参考にしてください。

    ノート

    メッセージで入力できる${Tag}または${Field}変数は、次の文書を参照してください。

  • 受信テスト:現在のイベントで発生する通知受信時に入力したイベント名とメッセージを事前にチェックすることができます。 必須項目(指標設定イベント名メッセージ)をすべて入力しないとテストできません。

    ノート
    • テスト中は、実際のメトリクス値や変数への置換機能が機能しません。

    • イベント受信オプションで、受信者タグが設定されているユーザーに限ってテスト通知を送信します。 すべて受信を選択すると、すべてのユーザーにテスト通知を送信します。

    • この機能を利用するためには、必須項目(*)に値を入力するか、選択します。

  • イベント受信:現在イベントで発生している通知を受信するメンバーを選択できます。

    • すべて受信:プロジェクトに所属するメンバー全員に通知を送信します。

    • 選択したタグを受信する:選択したタグを持つプロジェクトメンバーと3rd-partyプラグインに通知を送信します。 受信タグ項目が表示されたらタグ追加またはボタンをクリックして、タグ一覧で希望するタグを選択します。

    ノート

    アラート通知 > 通知設定メニューでプロジェクトメンバーと3rd-partyプラグインにタグを設定できます。 詳細については、次の文書を参照してください。

イベントを修正/削除する

  1. アラート通知 > イベント設定メニューから移動した後メトリックスタブを選択します。

  2. イベント一覧で修正または削除しようとする項目の一番左に編集アイコンボタンを選択します。

  3. メトリクスのイベント設定画面が表示すると、各オプションを修正して、保存ボタンを選択します。

    選択したイベントを削除するには、イベント設定画面の右上に削除ボタンを選択します。

JSON形式に修正する

メトリクスイベント設定をJSON形式に修正できます。

  1. 画面右上にJSON ボタンを選択します。

  2. 編集ウィンドウが表示されたら、JSON形式に合わせて内容を修正します。

  3. 修正を完了すると、画面右上の保存ボタンを選択します。

ノート

修正した内容がJSON形式に合わない場合、画面下にエラーメッセージが表示され、保存できません。 表示されるエラー メッセージは、形式によって異なる場合があります。

JSON error

JSONデータの構造は次のとおりです。

[
{
"eventMessage": "APDEX: ${apdex100} > 10 ",
"select": "",
"receiver": [],
"alertLabel": [
"project"
],
"rule": "apdex100 > 10",
"silentSec": 0,
"alertKey": [
"project"
],
"enabled": false,
"eventTitle": "APDEX",
"repeatDuration": 0,
"eventLevelText": "Critical",
"id": "z3f41ge464magg",
"category": "app_counter_project{m5}",
"repeatCount": 0,
"stateful": false
}
]

JSONデータのフィールドは、イベント設定で次のオプション項目にリンクされます。

JSONフィールドオプション分類
eventMessageメッセージ基本情報と通知設定
select対象を選択 > 直接入力イベント対象の選択
receiverイベント受信 > 受信タグオプションの受信タグキー値の一覧基本情報と通知設定
alertLabel通知動作時に内部的に使用するprimary key値-
rule指標設定オプションのイベント条件イベント条件の定義
silentSec一時停止イベント条件の定義
alertKey通知動作時に内部的に使用するprimary key値-
enabledイベント活性化基本情報と通知設定
eventTitleイベント名基本情報と通知設定
repeatDuration発生回数オプションで選択した時間イベント条件の定義
eventLevelText指標設定オプションのイベントレベルイベント条件の定義
id当該イベントの固有識別子値-
categoryカテゴリ選択イベント条件の定義
repeatCount発生回数オプションで選択した回数イベント条件の定義
stateful解消された通知イベント条件の定義

メトリックスイベントを共有する

メトリックスイベント設定をJSONファイルとして保存し、他のユーザーと設定を共有したり、他のユーザーの設定をインポートできます。

エクスポート

  1. 画面右上にJSON ボタンを選択します。

  2. JSON編集ウィンドウが表示されたら 抽出ボタンを選択します。

  3. JSONファイルがダウンロードされたら、共有する他のユーザーに転送してください。

ノート
  • JSONファイル名は、event-rules-YYYY-MM-DD.jsonの形式です。

  • イベントを検索した後、エクスポート機能を利用すると、検索した一覧のみJSONファイルでダウンロードできます。

インポート

  1. 画面右上のボタンを選択します。

  2. 抽出機能でダウンロードしたJSONファイルを選択します。

  3. JSON編集ウィンドウが表示されたらリストに追加するまたは上書きボタンを選択します。

注意

この機能は、同じ種類の製品間で利用することをお勧めします。 他の製品のプロジェクトからイベント設定を取得することはできますが、正常に機能しません。

イベントの検索

イベント一覧からイベント名または指標に基づいて検索できます。 検索入力欄に文字列を入力し、検索アイコンボタンを選択します。

ノート

イベントを検索した後、エクスポート機能を利用すると、検索した一覧のみJSONファイルでダウンロードできます。 エクスポート機能の詳細については、次の文書を参照してください。

発生条件、対象選択ガイド

メトリクスアラート通知でイベントの発生条件とイベント対象選択では同じ文法を使用します。 ただし、イベントの生成条件は、フィールド(Field)のKeyを変数として使用し、イベント対象選択は、タグ(Tag)のKeyを変数として使用します。

基本文法

  • 文字列をそのまま入力すると変数、バッククォート(' ')またはダブルクォート('' ")で囲むとtextとして認識します。

    oid == "oid"
    1. oid : 変数
    2. == : 関数
    3. "oid" : text
    // onameがott-1235の場合

    // 正常な場合
    onname = 'ott-1235'またはonname = "ott-1235"

    // 異常な場合、通知は機能しません。
    onname = ott-1235
  • 数字をそのまま入力すると、number、バッククォート(' ')またはダブルクォート('' '')で囲むとtextとして認識します。

    oid == 123
    1. oid : 変数
    2. == : 関数
    3. 123 : number
    // oidが123の場合

    // 正常な場合
    oid = 123

    // 異常な場合、通知は機能しません。
    id == '123' または oid == '123'

使用可能な演算子の一覧

オペレーター使い方説明
==operand1 == operand2operand1とoperand2の値が同じであることを確認します。
!=operand1 != operand2operand1とoperand2の値が異なることを確認します。
>operand1 > operand2operand1の値がoperand2の値より大きいことを確認します。
>=operand1 >= operand2operand1の値がoperand2の値より大きいことを確認します。
<operand1 < operand2operand1の値がoperand2の値より小さいことを確認します。
<=operand1 <= operand2operand1の値がoperand2の値より小さいことを確認します。
likeoperand1 like operand2operand1にoperand2が含まれているかどうかをパターンで検索します。
&&expression1 && expression2expression1とexpression2の両方がtrueであることを確認します。
andexpression1 and expression2expression1とexpression2がいずれもtrueが確認します。
&&と同じ役割を果たす演算子です。
||expression1 || expression2expression1またはexpression2がtrueであることを確認します。
orexpression1 or expression2expression1またはexpression2がtrueか確認します。
||と同じ役割を果たす演算子です。

likeの使い方

ワイルドカード(*)含む文字列を簡単に検索できます。

  • 特定のキーワードで始まる文字列検索


    Key like "Value*"

  • 特定のキーワードで終わる文字列検索


    Key like "*Value"

  • 特定のキーワードを含む文字列検索


    Key like "*Value*"

  • キーワードの中にワイルドカード(*)が使用できません。


    //対応しない文法
    Key like "Va*lue"

  • like演算子からワイルドカード(*)を省略する場合、equals(==)で動作します。


    //以下の2つの文章は全く同じ結果になります。
    Key like "Value"
    Key == "Value"

使用可能なメソッド一覧

メソッド使い方説明
startsWithstartsWith(param1, param2)param1をKeyとするValueがparam2で始まる場合は、true、反対の場合は、false
endsWithendsWith(param1, param2)param1をKeyとするValueがparam2で終わる場合、true、反対の場合は、false
isNullisNull(param1)param1がnullの場合は、true、反対の場合は、false
isNotNullisNotNull(param1)param1がnullでない場合は、true、反対の場合は、false
isEmptyisEmpty(param1)param1がnullまたはEmptyString("")の場合は、true、反対の場合は、false
isNotEmptyisNotEmpty(param1)param1がnullでも、EmptyString("")でもない場合は、true、反対の場合は、false

startsWith

startsWith(Key, "Value")

endsWith

endsWith(Key, "Value")

isNull

isNull(Key)

isNotNull

isNotNull(Key)

isEmpty

isEmpty(Key)

isNotEmpty

isNotEmpty(Key)

レベル動作ガイド

  1. 優先順位に基づくイベント発生

    複数のレベル条件を同時に満たす場合、最も優先度の高いイベントのみが発生します。

    設定:
    - Warning: CPU > 70%
    - Critical: CPU > 90%

    現在の状態: CPU 95%
    → 結果: Critical イベントのみ発生(Warning は抑制)
  2. レベル上昇

    低レベルのイベントが進行中の状態で、高レベル条件を満たした場合、両方のレベルが「進行中」となります。

    設定:
    - Warning: CPU > 70%
    - Critical: CPU > 90%

    シナリオ:
    1) CPU 80% → Warning 発生(進行中)
    2) CPU 95% → Warning(進行中)、Critical(進行中)
  3. レベル下降

    進行中の高レベルイベントが低レベル条件に戻った場合、高レベルは解消され、低レベルが維持されます。

    設定:
    - Warning: CPU > 70%
    - Critical: CPU > 90%

    シナリオ:
    1) CPU 97% → Critical 発生
    2) CPU 85% → Critical 解消、Warning 維持
    3) CPU 65% → Warning 解消
  4. 動作フロー

    - Warning: CPU > 70%
    - Critical: CPU > 90%

    メトリック値: 60% → 75% → 92% → 85% → 60%
    状態: 正常 Warning Critical Warning 正常
    (発生) (発生) (維持) (解消)
    Warning
    (維持)
ノート

進行中のイベントは、条件が満たされている限りアクティブ状態を維持し、条件が解除されるまで継続します。

条件設定ガイド

注意

指標名が数字で始まる場合、または特殊文字を含む場合は ${指標名} の形式で記述する必要があります。

  • 括弧 (), []
  • 演算子 +, -, *, /, %
  • 区切り文字 :, @, #, ,, (スペース)
  • その他の特殊文字 !, ^, &, |, ~, ```, =

${} を使用した例:

${cpu(xos)} > 50
${mem[0]} >= 100
${cpu-usage} > 80
${namespace:cpu} > 70
${metric name} > 60
${4xx_error} > 10

${} を付けずに使用可能: 英字、アンダースコア(_)、ドット(.)のみで構成されている場合

cpu > 80
cpu_usage > 50
CPUUtilization.Average > 0.8
  1. 比較演算子

    数値比較
    大きい:            cpu > 80
    以上: cpu >= 80
    小さい: memory < 1000
    以下: memory <= 1000
    等しい: status == 200
    等しくない: error != 0
    文字列比較
    status == 'OK'
    region == "us-east-1"
  2. 算術演算子

    • 基本算術
    基本算術
    加算:    cpu + 10 >= 90
    減算: memory - 100 >= 500
    乗算: cpu * 2 >= 100
    除算: disk / 1024 >= 100
    剰余: value % 10 == 0
    • 括弧による優先順位制御
    優先順位制御
    (cpu + memory) * 2 >= 200
    (disk - used) / total >= 0.2
    ((cpu + memory) / 2) >= 50
    • 負数の表現
    負数の表現
    cpu > -100
  3. 論理演算子

    • AND (&&)
    cpu > 80 && memory > 1000
    ${cpu(xos)} > 50 && ${mem(xos)} > 60
    • OR (||)
    cpu > 90 || memory > 90
    disk < 10 || network > 1000
    • 複合論理式
    (cpu > 50 && memory > 50) || disk < 20
    cpu > 80 && (memory > 1000 || disk > 500)
  4. パターンマッチ演算子

    • LIKE
    oname like 'prod-*'
    url like '*error*'
    message like 'WARN%'
    • NOT LIKE
    oname not like 'test-*'
    url not like '*debug*'
  5. 組み込み関数

    • Null チェック
    isNull(value)             # null か確認
    isNotNull(value) # null でないか確認
    nvl(value, 0) # null の場合は既定値
    isEmpty(str) # 空文字列か確認
    isNotEmpty(str) # 空でないか確認
    • 集計関数
    sum(cpu, memory, disk)              # 合計
    avg(cpu, memory) # 平均
    max(cpu, memory, disk) # 最大
    min(cpu, memory, disk) # 最小
    count(value1, value2, value3) # 件数
    • 数学関数
    round(cpu, 2)             # 四捨五入(小数2桁)
    • 文字列関数
    length(str)                # 文字数
    startsWith(str, 'prefix') # プレフィックス確認
    endsWith(str, 'suffix') # サフィックス確認
    indexOf(str, 'search') # 位置
    substring(str, 0, 10) # 部分文字列
    trim(str) # トリム
    replace(str, 'old', 'new') # 置換
    hasStr(str, 'search') # 含むか確認
    • 条件関数

      if: 条件が true の場合は true値、false の場合は false値 を返す

      形式
      if(条件, true値, false値)
      if(value >= 90, 'High', 'Medium') == 'High'

      decode: 値と条件を比較し、一致した結果を返す。一致がなければ既定値を返す

      形式
      decode(値, 条件1, 結果1, 条件2, 結果2, ..., 条件N, 結果N, デフォルト)
      decode(value, 1, 'Low', 2, 'Medium', 3, 'High', 'Unknown') == 'Unknown'

      in: 値が候補値のいずれかと一致すれば true、そうでなければ false

      形式
      in(値, 候補1, 候補2, ..., 候補N)
      in(status, 200, 201, 204) == false
注意

記述時の注意事項

  • 推奨:
  • シンプルな変数名は $ 不要(例: cpu, memory)
  • 特殊文字を含む場合は必ず $ を使用
  • 複雑な式は括弧で明確化
  • 関数名は正確に記述(大文字小文字を区別)
  • 避けるべきこと:
  • 不完全な式(例: cpu >, memory &&)
  • 括弧の不一致(例: (cpu > 80, cpu > 80))
  • 無効な演算子(例: cpu >> 80, cpu >< 80)

テンプレート

メトリクスイベントテンプレート

ノート

クバネティスイベントのreasonフィールドの詳細については、クバネティス公式文書を参照してください。

BackOff

Kubernetesイベントのreasonフィールド情報のうち、BackOffが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

Evicted

Kubernetesイベントのreasonフィールド情報のうち、Evictedが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

FailedCreatePodSandBox

Kubernetesイベントのreasonフィールド情報のうち、FailedCreatePodSandBoxが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

FailedMount

Kubernetesイベントのreasonフィールド情報のうち、FailedMountが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

FailedScheduling

Kubernetesイベントのreasonフィールド情報のうち、FailedSchedulingが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

FailedSync

Kubernetesイベントのreasonフィールド情報のうち、FailedSyncが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

NodeNotReady

Kubernetesイベントのreasonフィールド情報のうち、NodeNotReadyが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

Unhealthy

Kubernetesイベントのreasonフィールド情報のうち、Unhealthyが0回以上表示された場合、その通知が発生します。 メッセージ例は次のとおりです。

Kubernetesイベント(Kube Event ${message})

コンテナCPU割当てによる使用率アラート

コンテナのCPU Limit基準でCPUの全体使用量(${cpu_per_quota})が70%以上の場合、その通知が発生します。 メッセージ例は次のとおりです。

${okindName}${oname}コンテナのCPU使用率が「${cpu_per_quota}% >= 70%」でです。

コンテナメモリ失敗回数

コンテナメモリのLimit到達件数が 1回以上の場合、その通知が発生します。 メッセージ例は次のとおりです。

${okindName}${oname}コンテナが limitを超えたため、${mem_failcnt}が増加しました。

コンテナメモリ使用率

コンテナメモリのLimit基準使用量(${container.mem_percent})が90%以上の場合、その通知が発生します。 メッセージ例は次のとおりです。

${okindName}${oname}コンテナのメモリ使用率は「${container.mem_percent}% >= 90%」です。

コンテナDEAD状態の通知

コンテナの状態コードが100の場合、その通知が発生します。 状態コード100DEADを意味します。 メッセージ例は次のとおりです。

${oname}コンテナがDEAD状態です。

クラスタCPU Request通知

ノード割り当て可能なCPU量をLimit CPUの合計で割った値に100を乗じた値が80%以上であれば、その通知が発生します。 メッセージ例は次のとおりです。

クラスタのCPUクォータに対してCPU Request(最低要求リソース)が80%を超えました。

クラスタMemory Request通知

ノード割り当て可能なメモリ量をLimit Memoryの合計で割った値に100を乗じた値が80%以上であれば、その通知が発生します。 メッセージ例は次のとおりです。

クラスタのMemoryクォータに対してMemory Request(最低要求リソース)が 80%を超えました。

クラスタCPU Request通知

ノード割り当て可能なCPU量をLimit CPUの合計で割った値に100を乗じた値が60%以上であれば、その通知が発生します。 メッセージ例は次のとおりです。

クラスタのCPUクォータに対してCPU Request(最低要求リソース)が60%を超えました。

クラスタMemory Request通知

ノード割り当て可能なメモリ量をLimit Memoryの合計で割った値に100を乗じた値が60%以上であれば、その通知が発生します。 メッセージ例は次のとおりです。

クラスタのMemoryクォータに対してMemory Request(最低要求リソース)が 60%を超えました。

クラスタPod数の通知

ノードに割り当て可能なPodが存在しない場合、その通知が発生します。 メッセージ例は次のとおりです。

マスターに割当てできるPodの数は0です。

ノードCPU使用率のアラート通知

ノードのCPU使用率(${cpu})が70%以上の場合、その通知が発生します。 メッセージ例は次のとおりです。

${oname}のCPU使用率が「${cpu}% >= 70%」です。

ノードメモリ使用率のアラート通知

ノードのメモリ使用率(${memory_pused})が90%以上の場合、その通知が発生します。 メッセージ例は次のとおりです。

${oname}のメモリ使用率が「${memory_pused}% >= 90%」です。

割り当てできないノード通知

ノードに割り当て可能なPod数が 0以下の場合、通知が発生します。

APDEX

トランザクションが存在し、APDEX点数が0.7点より低い場合、その通知が発生します。 メッセージ例は次のとおりです。

ノードに割り当て可能なPod数が0個以下の場合、その通知が発生します。 メッセージ例は次のとおりです。

APDEXが0.7未満です (${oname})

複合メトリクスのイベントテンプレート

Inactive agents has been found

アクティブ化されたエージェントの数が指定された条件よりも少ない時、通知が発生します。 メッセージ例は次のとおりです。

${ip} ${okindName} The number of active agents has decreased to ${num_of_current_agents}.

TPS has changed by more than 30% compared to the previous week

アプリケーションのTPSが先週に比べて30%以上変化した時、通知が発生します。 メッセージの例は次のとおりです。

${okindName} a week ago : ${prev_week_tps_display}, current : ${current_tps_display}, difference : ${one_week_diff_display}

Very slow active transactions detected

アプリケーションの8秒超過区間のトランザクション数が平均10個を超えると、通知が発生します。 メッセージの例は次のとおりです。

${okindName} ${very_slow_tx_cnt_m5_avg_display} active transactions performed for more than 8 seconds were detected.

APDEX score dropped

APDEX点数が70未満になると、通知が発生します。 メッセージ例は次のとおりです。

The average apdex of ${pname} in the last 5 seconds is ${apdex_display}

CPU % is too high

ノードのCPU使用率が80%を超えると、通知が発生します。 メッセージの例は次のとおりです。

CPU utilization rate of the ${oname} in the last minute > ${_rule_} %

CPU User % is too high

ユーザーが使用するCPU使用率が50%を超えると、通知が発生します。 メッセージ例は次のとおりです。

CPU User utilization rate of the ${oname} in the last minute > ${_rule_} %

The number of agents with high CPU SYS % is too large

システムが使用するCPU使用率が50%を超えると、通知が発生します。 メッセージの例は次のとおりです。

The number of agents with a CPU SYS of 70% or more in the last minute > ${_rule_} %

The Disk I/O is too high

ディスクの I/O使用率が10%を超えると、通知が発生します。 メッセージ例は次のとおりです。

In the last minute, ${oname}'s Disk I/O > ${_rule_} %

The Disk Used % is too high

ファイルシステムの使用率が90%を超えると、通知が発生します。 メッセージ例は次のとおりです。

In the last minute, ${oname}'s Disk Used > ${_rule_} %

Network Traffic I/O is too high

ネットワークのインバウンドトラフィック/アウトバウンドトラフィックが10%を超えると、通知が発生します。 メッセージ例は次のとおりです。

In the last minute, ${oname}'s Network Traffic I/O > ${_rule_} %

Network Packet I/O is too high

ネットワークのインバウンドパケット/アウトバウンドパケットが10%を超えると、通知が発生します。 メッセージ例は次のとおりです。

In the last minute, ${oname}'s Network Packet I/O > ${_rule_} %

Network Error I/O is too high

ネットワークのインバウンドエラー/アウトバウンドエラーが10%を超えると、通知が発生します。 メッセージ例は次のとおりです。

In the last minute, The maximum value of the ${oname}'s Network Error I/O > ${_rule_} %

The kube-apiserver latency over 10 second

コントロールプレーンコンポーネントの中でkube-apiserverのlatencyが10秒超えると、通知が発生します。 ただし、WATCH行為は除きます。 メッセージ例は次のとおりです。

Latency of the ${verb} verb in ${instance} of kube-apiserver exceeded ${metricValue} seconds.

The kube-apiserver response increase/decrease rate for error codes

コントロールプレーンコンポーネントの中でkube-apiserverのエラー応答が50件を超え、増減率が50% 以上に変化した場合、通知が発生します。 メッセージ例は次のとおりです。

Rate of increase in the number of requests for code ${code} on instance ${instance} of kube-apiserver exceeded ${metricValue}.