Hitachi

JP1 Version 13 JP1/Integrated Management 3 - Manager 導入・設計ガイド


12.5.2 性能監視機能

〈この項の構成〉

(1) 通信機能

(a) 通信プロトコル

IMエクスポーターが提供するアドオンプログラムが使用する通信プロトコルを,次に示します。

接続元

接続先

プロトコル

認証方式

Yet another cloudwatch exporter

Amazon CloudWatch

JP1/IM - Agentの「9.5.3(1)(a)通信プロトコルと認証方法」を参照してください。

Promitor Scraper

Azure Monitor

HTTPS

クライアント認証なし

Promitor Resource Discovery

Azure Resource Graph

HTTPS

クライアント認証なし

Promitor Scraper

Promitor Resource Discovery

HTTP

認証なし

Prometheus

Fluentd

HTTP

認証なし

(b) ネットワーク構成

IMエクスポーターが提供するアドオンプログラムを使用できる環境は,JP1/IMに準じます。使用できるプロキシ構成を,次に示します。

接続元

接続先

使用できるプロキシ構成

Yet another cloudwatch exporter

Amazon CloudWatch

JP1/IM - Agentの「9.5.3(1)(b)ネットワーク構成」を参照してください。

Promitor Scraper

Azure Monitor

  • プロキシサーバなし

  • プロキシサーバあり(認証なし)

  • プロキシサーバあり(認証あり)

Promitor Resource Discovery

Azure Resource Graph

IMエクスポーターが提供するアドオンプログラムは,次に示すデータを送信します。

接続元

接続先

送信データ

認証方式

Yet another cloudwatch exporter

Amazon CloudWatch

JP1/IM - Agentの「9.5.3(1)(b)ネットワーク構成」を参照してください。

Promitor Scraper

Azure Monitor

Azure Monitorのデータ(メトリクス情報)

  • サービスプリンシパル

  • マネージドID

Promitor Resource Discovery

Azure Resource Graph

Azure Resource Graphのデータ(リソース探索結果)

(2) パフォーマンスデータの収集機能

Prometheus serverが,監視対象からパフォーマンスデータを収集する機能です。次の2つの機能があります。

詳細については,JP1/IM - Agentの「9.5.3(2)パフォーマンスデータの収集機能」を参照してください。

(a) スクレイプ機能

スクレイプの定義は,スクレイプジョブの単位で行います。JP1/IM - Agentでは,Exporterの種類に応じたスクレイプジョブ名のスクレイプ定義が,デフォルトで設定されています。

UAP監視機能でディスカバリ設定ファイルの作成による監視を行う場合は,ジョブの定義が必要です。また,ログメトリクス機能のスクレイプ定義は,設定の追加が必要です。

ログメトリクス機能のスクレイプ定義については,マニュアル「JP1/Integrated Management 3 - Manager 構築ガイド」のIMエクスポーターの「10.1.2(2)スクレイプ定義の設定(必須)」を参照してください。

IMエクスポーターのアドオンプログラムに対するデフォルトのスクレイプ定義を,次に示します。

スクレイプジョブ名

スクレイプ定義

jpc_windows

Windows exporter用のスクレイプ定義

jpc_process

Process exporter用のスクレイプ定義

jpc_cloudwatch

Yet another cloudwatch exporter用のスクレイプ定義

jpc_promitor

Promitor用のスクレイプ定義

jpc_script

Script exporter用のスクレイプ定義

Prometheus serverが,スクレイプを実行してExporterから取得するメトリックは,Exporterの種類に応じて異なります。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」で,各Exporterのメトリック定義ファイルの説明を参照してください。

(b) 監視対象の稼働情報の取得機能

監視対象から稼働情報(パフォーマンスデータ)を取得する機能のうち,IMエクスポーターのアドオンプログラムの機能について説明します。

(c) Windows exporter

Windows exporterは,監視対象のWindowsホストに組み込んで,Windowsホストの稼働情報を取得するExporterです。詳細については,JP1/IM - Agentの「9.5.3(2)パフォーマンスデータの収集機能」を参照してください。

IMエクスポーターでは,JP1/IM - Agentが同梱するWindows exporterの機能に加えて,プロセスの稼働情報を取得できます。使用するコレクタに「process」がデフォルトで追加されます。

■ 主な取得項目

Windows exporterの主な取得項目は,Windows exporterのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」のJP1/IM - Agentの「Windows exporterのメトリック定義ファイル(metrics_windows_exporter.conf)」を参照してください。

IMエクスポーターでは,メトリック定義ファイルに次の取得項目を追加できます。定義ファイル内で記述するPromQL文で指定できるメトリックを,次に示します。

メトリック名

コレクタ

取得する内容

ラベル

windows_process_start_time

process

プロセスの開始時間(UNIX時間)

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

windows_process_cpu_time_total

process

プロセスのスレッドがプロセッサを使用して命令を実行した経過時間をモード別(privileged,user)で返却(累積値)

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

mode: モード(privileged,user)

windows_process_io_bytes_total

process

プロセスのIO操作で発生したのバイト数をモード別(read,write,other)で返却(累積値)

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

mode: モード(privileged,user)

windows_process_io_operations_total

process

プロセスのIO操作の回数をモード別(read,write,other)で返却(累積値)

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

mode: モード(read,write,other)

windows_process_page_faults_total

process

プロセスで実行されているスレッドによるページフォールトの回数(累積値)

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

windows_process_page_file_bytes

process

プロセスがページングファイルで使用した現在のバイト数

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

windows_process_pool_bytes

process

ページプールまたは非ページプールで最後に監視されたバイト数

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

pool: ページプール(paged)または非ページプール(nonpaged)

windows_process_priority_base

process

プロセスの現在の基本優先度(値が大きいほど基本優先度が高い)

値は次のとおりです。

  • 24:リアルタイム

  • 13:高

  • 10:通常以上

  • 8:通常

  • 6:通常以下

  • 4:低

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

windows_process_private_bytes

process

プロセスが割り当てた現在のバイト数(ほかのプロセスと共有不可)

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

windows_process_virtual_bytes

process

プロセスが使用している仮想アドレス空間の現在のバイト数

instance: インスタンス識別文字列

job: ジョブ名

process: プロセス名

process_id: プロセスID

creating_process_id: 作成元プロセスID

■ JP1/PFM - Agent for Platformで収集できる主要なパフォーマンスデータとの比較

JP1/PFM - Agent for Platformで収集できる主要なパフォーマンスデータに対するWindows exporterのメトリクスでの取得可否を,JP1/PFM - Agent for Platformが収集に使用するレコードと比較する形で,次に示します。

JP1/PFM - Agent for Platformで収集できる主なパフォーマンスデータ

Windows exporterのメトリクスでの取得可否

レコード名

(レコードID)

レコードに格納される情報

レコードの作成単位

取得できるもの

取得できないもの

Process Detail

(PD)

1つのプロセスのページング,メモリー,および時間の使用状況などについての,ある時点での状態を示すパフォーマンスデータ。

プロセスID

process_id単位でノードを作成した場合に相当します。

  • 実行ユーザ/グループ

  • 仮想化環境のID

  • ハンドル数

  • スレッド数

  • プロセスで使用しているメモリー使用量

  • プロセスで使用していたメモリー使用量

Process Detail Interval

(PDI)

1つのプロセスのページング,メモリー,および時間の使用状況などについての,ある時点での状態を示すパフォーマンスデータ。

プロセスID

取得するメトリクスは,すべてPDに含まれます。

平均や頻度などを計算するメトリクスについては,収集間隔ではなく,プロセスの開始時間から計算することで対応できます。

Process End Detail

(PD_PEND)

プロセスが終了したあとの状態を示すパフォーマンスデータ。

プロセスID

終了したプロセスの情報は取得できません。

Workgroup Summary

(PI_WGRP)

Process Detail(PD)レコードに格納されるレコードを,ある時点での状態で,ワークグループを単位に要約したパフォーマンスデータ。

ワークグループ

ワークグループは,JP1/PFM独自の単位のため,対象外となります。

Application Process Interval

(PD_APSI)

プロセス監視の設定を行っているプロセスについての,ある時点での状態を示すパフォーマンスデータ。

プロセスID

任意の単位は指定できません。

取得するメトリクスは,すべてAPSに含まれます。

Application Process Overview

(PD_APS)

プロセスについての,ある時点での状態を示すパフォーマンスデータ。

プロセスID

任意の単位は指定できませんが,process単位でノードを作成した場合に相当します。

  • コマンドライン

  • 実行ユーザ/グループ

  • 仮想化環境のID

  • ハンドル数

  • スレッド数

  • プロセスで使用しているメモリー使用量

  • プロセスで使用していたメモリー使用量

(凡例)

−:該当なし

(d) Process exporter

Process exporterは,監視対象のLinuxホストに組み込んで,Linuxホスト上で稼働するプロセスの稼働情報を取得するExporterです。

Process exporterは,Prometheus serverと同じホストにインストールされ,Prometheus serverからのスクレイプ要求を契機に,同ホストのLinux OSからプロセスの稼働情報を収集して,Prometheus serverに返却します。

ホストの外からの監視(URLによる外形監視やCloudWatch)では収集できない,プロセスに関する稼働情報を,ホスト内部から収集できます。

■ 主な取得項目

Process exporterの主な取得項目は,Process exporterのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」で,「Process exporterのメトリック定義ファイル(metrics_process_exporter.conf)」を参照してください。

メトリック定義ファイルには,取得項目を追加できます。定義ファイル内で記述するPromQL文で指定できるメトリックを,次に示します。

メトリック名

取得する内容

ラベル

namedprocess_namegroup_num_procs

グループ内のプロセスの数

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_cpu_seconds_total

CPU経過時間(累積値)

取得元:/proc/[pid]/statutime(14)stime(15)

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

mode: userまたはsystem

namedprocess_namegroup_read_bytes_total

読み込みI/Oのバイト数(累積値)

取得元:/proc/[pid]/ioread_bytes

process_exporterを,rootまたはそのプロセスを実行したユーザで実行しないと,値が0になります。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_write_bytes_total

書き込みI/Oのバイト数(累積値)

取得元:/proc/[pid]/iowrite_bytes

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_major_page_faults_total

メジャーページフォルトの回数(累積値)

取得元:/proc/[pid]/statmajflt(12)

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_minor_page_faults_total

マイナーページフォルトの回数(累積値)

取得元:/proc/[pid]/statminflt(10)

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_context_switches_total

コンテキストスイッチの回数(累積値)

取得元:/proc/[pid]/statusvoluntary_ctxt_switchesnonvoluntary_ctxt_switches

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

ctxswitchtype: voluntaryまたはnonvoluntary

namedprocess_namegroup_memory_bytes

使用メモリ量

memtypeラベル(種別)の値は次のとおりです。

  • resident

    プロセスが持っている実メモリ上のページ数

    取得元:/proc/[pid]/statrss(24)

  • virtual

    仮想メモリサイズ

    取得元:/proc/[pid]/statのvsize(23)

  • swapped

    スワップアウトされた仮想メモリのサイズ

    取得元:/proc/[pid]/statusVmSwap(ただし,バイト単位に変換)

  • proportionalResident

    ほかのプロセスと共有している実メモリ上のページから自プロセスに割り当てられたページ数

    取得元:/proc/[pid]/smapsPssの合計値

  • proportionalSwapped

    ほかのプロセスと共有しているスワップアウトされたページから自プロセスに割り当てられたページ数

    取得元:/proc/[pid]/smapsSwapPssの合計値

注※ smapsファイルが存在する場合だけ

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

memtype: resident,virtual,swapped,proportionalResident,またはproportionalSwapped

namedprocess_namegroup_open_filedesc

プロセスが使用しているファイルディスクリプターの数

/proc/[pid]/fdで参照できるファイルディスクリプターの数を取得して使用します。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_worst_fd_ratio

プロセスが使用しているファイルディスクリプターの上限値に対する割合のうち,グループ内で最も高い割合値

/proc/[pid]/limitsで取得したMax open filesSoft Limit値に対するopen_filedescの比率を使用します。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_oldest_start_time_seconds

グループ内の最も古いプロセスが開始されたエポック時間(1970/1/1からの秒数)

取得元:/proc/[pid]/statのstarttime(22)

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_num_threads

プロセスのスレッド数

取得元:/proc/[pid]/statfield num_threads(20)

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_states

ステータス別のスレッド数

stateラベル(分類)の値は次のとおりです。

  • Running

  • Sleeping

  • Waiting

  • Zombie

  • Other

取得元:/proc/[pid]/statstate(3)

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

state: Running,Sleeping,Waiting,Zombie,またはOther

namedprocess_namegroup_thread_count

サブグループに所属するスレッド数

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

threadname: スレッド名

namedprocess_namegroup_thread_cpu_seconds_total

namedprocess_namegroup_cpu_seconds_totalと同じ値を,スレッド単位(累積値)で取得します。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

threadname: スレッド名

mode: userまたはsystem

namedprocess_namegroup_thread_io_bytes_total

namedprocess_namegroup_read_bytes_totalまたはnamedprocess_namegroup_write_bytes_totalと同じ値,スレッド単位(累積値)で取得します。iomodeラベルでreadとwriteを区別できます。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

threadname: スレッド名

iomode: readまたはwrite

namedprocess_namegroup_thread_major_page_faults_total

namedprocess_namegroup_major_page_faults_totalと同じ値を,スレッド単位(累積値)で取得します。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_thread_minor_page_faults_total

namedprocess_namegroup_minor_page_faults_totalと同じ値を,スレッド単位(累積値)で取得します。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

namedprocess_namegroup_thread_context_switches_total

namedprocess_namegroup_context_switches_totalと同じ値を,スレッド単位(累積値)で取得します。

instance: インスタンス識別文字列

job: ジョブ名

groupname: グループ名

重要
  • マルチバイトを含むプロセス名の監視はできません。

  • Process exporterは,一度収集した情報に対して,プロセスの停止後も出力を続けます。収集情報にプロセスIDを含めた場合,プロセスが再起動してプロセスIDが変更されるたびに,新しい時系列データが増え,不要なデータが大量に増加します。そのため,バージョン13-00では,デフォルトの収集対象(groupname)にプロセスIDを含みません。同一のコマンドラインのプロセスを分けて管理したい場合は,引数の順番を変えるなどの運用,または,プロセスIDでの運用(ただし,収集情報が増え続けることを避けるために定期的な再起動が必要です)を推奨します。

    なお,Windows exporterは,収集情報にプロセスIDを含むため,Windows exporterの収集情報とは差異があります。

■ JP1/PFM - Agent for Platformで収集できる主要なパフォーマンスデータとの比較

JP1/PFM - Agent for Platformで収集できる主要なパフォーマンスデータに対するProcess exporterのメトリクスでの取得可否を,JP1/PFM - Agent for Platformが収集に使用するレコードと比較する形で,次に示します。

JP1/PFM - Agent for Platformで収集できる主なパフォーマンスデータ

Process exporterのメトリクスでの取得可否

レコード名

(レコードID)

レコードに格納される情報

レコードの作成単位

取得できるもの

取得できないもの

Process Detail

(PD)

プロセスについての,ある時点での状態を示すパフォーマンスデータ。

プロセスID

groupnameに{{.PID}}が含まれるようにすることで,プロセスID単位の取得ができます。

また,プロセスID単位でノードを作成した場合に相当します。

  • 親プロセス/子プロセス情報

  • 実/実効グループ/実ユーザ/端末情報,実効ユーザID

  • 一部のメモリ種別の使用量

  • CPUごとのCPU使用率

  • 仮想化環境のID

Process Detail Interval

(PDI)

プロセスについての,ある一定の時間を単位としたパフォーマンスデータ。

プロセスID

取得するメトリクスは,すべてPDに含まれます。

平均や頻度などを計算するメトリクスについては,収集間隔ではなく,プロセスの開始時間から計算することで対応できます。

Process Summary

(PD_PDS)

Process Detail(PD)レコードに格納されるデータを,ある時点での状態で要約したパフォーマンスデータ。

システム

instance単位(ホスト単位)で集約ができます。

  • プロセスの状態の一部

  • 実ユーザ/端末情報

Program Summary

(PD_PGM)

Process Detail(PD)レコードに格納されるデータを,プログラムを単位に,ある時点での状態で要約したパフォーマンスデータ。

プログラム

groupnameをプログラム単位({{.ExeBase}}や{{.ExeFull}}などを利用)とすることで,プログラム単位の取得ができます。

Terminal Summary

(PD_TERM)

Process Detail(PD)レコードに格納されるデータを,端末を単位に,ある時点での状態を要約したパフォーマンスデータ。

端末

端末情報を取得できないため,端末単位での集約はできません。

User Summary

(PD_USER)

Process Detail(PD)レコードに格納されるデータを,ユーザーを単位に,ある時点での状態で要約したパフォーマンスデータ。

ユーザーID

groupnameに{{.Username}}が含まれるようにして,同じユーザー名が含まれるものを集計することで,ユーザー単位の集計ができます。

  • 実効ユーザID

Workgroup Summary

(PI_WGRP)

Process Detail(PD)レコードに格納されるデータを,ワークグループを単位に,ある時点での状態で要約したパフォーマンスデータ。

ワークグループ

ワークグループは,JP1/PFM独自の単位のため,対象外となります。

Application Process Interval

(PD_APSI)

プロセス監視の設定を行っているプロセスについての,ある時点での状態を示すパフォーマンスデータ。

プロセスID

取得するメトリクスは,ApplicationName(≒Process Exporterのgroupname)を除き,すべてAPSに含まれます。

平均や頻度などを計算するメトリクスについては,収集間隔ではなく,プロセスの開始時間から計算することで対応できます。

Application Process Overview

(PD_APS)

プロセッサの使用状況についての,ある一定の時を単位としたパフォーマンスデータ。

プロセスID

groupname単位でノードを作成した場合に相当します。

各プロセス(プロセスID単位)のメトリクスは,PDと同じです。

PDと同じです。

(凡例)

−:該当なし

(e) Yet another cloudwatch exporter

Yet another cloudwatch exporterは,Amazon CloudWatchを使用して,クラウド上のAWSサービスの稼働情報を収集するExporterです。詳細については,JP1/IM - Agentの「9.5.3(2)パフォーマンスデータの収集機能」の説明を参照してください。

■ 主な取得項目

Yet another cloudwatch exporterの主な取得項目は,Yet another cloudwatch exporterのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」のJP1/IM - Agentの「Yet another cloudwatch exporterのメトリック定義ファイル(metrics_ya_cloudwatch_exporter.conf)」を参照してください。

■ 収集できるCloudWatchメトリック

IMエクスポーターでは,JP1/IM - AgentのYet another cloudwatch exporterが監視対象としてサポートするAWSの名前空間名に加えて,次に示すAWSの名前空間名のメトリクスを収集できます。

表12‒10 IMエクスポーターが監視対象の拡張としてサポートするAWSの名前空間

AWSの名前空間

CloudWatch上のメトリクスの分類名

ディメンション

AWS/EBS

ボリューム別メトリクス

VolumeId

AWS/ECS

ClusterName,ServiceName

ClusterName

ServiceName

AWS/EFS

ファイルシステムメトリクス

FileSystemId

AWS/EFS

ファイルシステムストレージメトリクス

FilesSystemId

StorageClass

AWS/FSx

ファイルシステムメトリクス

FileSystemId

AWS/RDS

データベース別メトリクス

DBInstanceIdentifier

DBClusterIdentifier

DBClusterIdentifier

AWS/SNS

トピックメトリクス

TopicName

注※

AWS CloudWatchが,メトリクスをディメンションごとに分類した分類名です。CloudWatchのWebページで確認できます。

(f) Promitor

Promitorは,統合エージェントに含まれ,Azure MonitorおよびAzure Resource Graphを使用して,クラウド上のAzureサービスの稼働情報を収集するExporterです。

Promitorは,Promitor ScraperとPromitor Resource Discoveryから構成されます。Promitor Scraperは,Scheduleの設定によってAzure Monitorからリソースのメトリクスを収集し,返却します。

メトリクスの取得対象のリソースは,設定ファイルで個別に指定する方式と,対象リソースを自動検出する方式の2種類があります。自動検出する方式の場合は,Promitor Resource DiscoveryがAzure Resource Graphからテナント内のリソースを検出し,その結果をもとにPromitor Scraperがメトリクス情報を取得します。

また,Promitorは,Promitor ScraperおよびPromitor Resource Discoveryのどちらも,認証情報などのruntime設定の定義を行う設定ファイルと,取得するメトリクス情報の定義を行う設定ファイルの2つの設定ファイルが必要となります。

■ 主な取得項目

Promitorの主な取得項目は,Promitorのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」の「Promitorのメトリック定義ファイル(metrics_promitor.conf)」を参照してください。

■ 収集できるメトリック

Promitorは監視対象として次に示すサービスのメトリクスを収集できます。

収集するメトリックは,Promitor Scraper設定ファイル(metrics-declaration.yaml)に記述して指定します。

Promitor Scraper設定ファイルに指定するメトリックを変更する場合は,マニュアル「JP1/Integrated Management 3 - Manager 構築ガイド」で,「10.1.2(6)Promitorのセットアップ」の「(d)取得対象の設定(必須)」の「■監視メトリクスの変更(オプション)」を参照してください。

また,Promitor Scraper設定ファイルに設定したメトリックを使用して,Promitorのメトリック定義ファイルに,新たなメトリックを追加することもできます。定義ファイル内で記述するPromQL文に,Promitor Scraper設定ファイルに設定したメトリックを指定できます。

表12‒11 Promitorが監視対象としてサポートするサービス

PromitorのresourceType名

Azure Monitorの名前空間名

オートディスカバリ

VirtualMachine

Microsoft.Compute/virtualMachines

FunctionApp

Microsoft.Web/sites

ContainerInstance

Microsoft.ContainerInstance/containerGroups

KubernetesService

Microsoft.ContainerService/managedClusters

FileStorage

Microsoft.Storage/storageAccounts/fileServices

BlobStorage

Microsoft.Storage/storageAccounts/blobServices

ServiceBusNamespace

Microsoft.ServiceBus/namespaces

CosmosDb

Microsoft.DocumentDB/databaseAccounts

SqlDatabase

Microsoft.Sql/servers/databases

SqlServer

Microsoft.Sql/servers/databases

Microsoft.Sql/servers/elasticPools

SqlManagedInstance

Microsoft.Sql/managedInstances

SqlElasticPool

Microsoft.Sql/servers/elasticPools

LogicApp

Microsoft.Logic/workflows

(凡例)

○:オートディスカバリの対象です。

−:オートディスカバリの対象外です。

■ Promitorが使用するAzure SDKのサポート状況の確認

Promitorは,Azure SDK for .NETを使用しています。Azure SDKのサポート終了は12か月前に通知されます。Azure SDKのライフサイクルについては,下記のWebサイトのライフサイクルに関するFAQを参照してください。

https://learn.microsoft.com/ja-jp/lifecycle/faq/azure#azure-sdk-----------

また,Azure SDKのライブラリのバージョンのライフサイクルについては,下記のWebサイトで検索できます。

https://azure.github.io/azure-sdk/releases/latest/all/dotnet.html

■ アカウント情報に必要な権限

PromitorからAzureに接続する方式には,サービスプリンシパル方式とマネージドID方式があります。サービスプリンシパルおよびマネージドIDに割り当てる権限については,マニュアル「JP1/Integrated Management 3 - Manager 構築ガイド」の「10.1.2(6)Promitorのセットアップ」の「(a)Azureに接続するための設定(必須)」を参照してください。

(g) コンテナ監視機能

コンテナ環境の監視は,次の表に示すように,監視対象によって稼働情報の収集方法が異なります。

監視対象

稼働情報の収集方法

Red Hat OpenShift

ユーザー独自のPrometheus

Kubernetes

Amazon Elastic Kubernetes Service(EKS)

Azure Kubernetes Service(AKS)

Azure監視機能(Promitor)

監視対象ごとの稼働情報の収集方法について,次に説明します。

(h) Red Hat OpenShift

Red Hat OpenShiftでは,デフォルトのモニタリングコンポーネントに含まれるPrometheusがスクレイプ対象(kube-state-metrics,node_exporter,kubelet)から取得した稼働情報を,JP1/IM - Managerに送信します。

■ 主な取得項目

Red Hat OpenShiftの主な取得項目は,次の表に示すコンテナ監視のスクレイプ対象ごとのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」(「2. 定義ファイル」または「10. IMエクスポーターの定義ファイル」)の各メトリック定義ファイルの説明を参照してください。

スクレイプ対象

メトリック定義ファイル

kube-stat-metrics

コンテナ監視のメトリック定義ファイル(metrics_kubernetes.conf)

node_exporter

Node exporterのメトリック定義ファイル(metrics_node_exporter.conf)

kubelet

コンテナ監視のメトリック定義ファイル(metrics_kubernetes.conf)

メトリック定義ファイルには,取得項目を追加できます。定義ファイル内で記述するPromQL文で指定できるメトリックを,次に示します。

■スクレイプ対象がkube-stat-metricsの場合

メトリック名

取得する内容

ラベル

kube_cronjob_info

CronJobに関する情報

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

schedule=schedule

concurrency_policy=concurrency-policy

kube_cronjob_labels

Prometheusラベルに変換されたKubernetesラベル

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

label_CRONJOB_LABEL=CRONJOB_LABEL

kube_cronjob_created

Unix作成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_cronjob_next_schedule_time

CronJobがスケジュールされている場合はlastScheduleTimeよりあとの時間,スケジュールされていない場合はCronJobの作成時間よりあとの時間

これを利用してJobが遅延しているかどうかを判断します。

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_cronjob_status_active

現在実行中のJobへのポインター

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_cronjob_status_last_schedule_time

Jobが最後にスケジュールされたときの情報

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_cronjob_spec_suspend

コントローラーに後続の実行を一時停止する指示

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_cronjob_spec_starting_deadline_seconds

何らかの理由でスケジュールされた時間に間に合わなかった場合に,Jobを開始する期限

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_cronjob_metadata_resource_version

CronJobの特定のバージョンを示すリソースバージョン

instance: インスタンス識別文字列

job: ジョブ名

cronjob: cronjob-name

namespace=cronjob-namespace

kube_daemonset_created

Unix作成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_current_number_scheduled

1つ以上のデーモンポッドが動作しているはずのノードの数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_desired_number_scheduled

デーモンポッドを動作させるべきノードの数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_number_available

1つ以上のデーモンポッドが動作し,利用可能であるべきノード数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_number_misscheduled

デーモンポッドが動作しているが,想定していないノードの数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_number_ready

デーモンポッドを実行し,1つ以上のデーモンポッドが実行可能な状態にあるべきノードの数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_number_unavailable

デーモンポッドを実行すべきノードで,デーモンポッドが実行されておらず利用可能なノードの数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_observed_generation

daemon setコントローラーが観測した直近の生成

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_status_updated_number_scheduled

更新されたデーモンポッド

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_metadata_generation

希望する状態の特定の生成を表すシーケンス番号

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_daemonset_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

label_DAEMONSET_LABEL=DAEMONSET_LABEL

kube_deployment_status_replicas

Deploymentごとのレプリカの数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_status_replicas_ready

Deploymentごとの準備レプリカ数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_status_replicas_available

Deploymentごとの利用可能なレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_status_replicas_unavailable

Deploymentごとの利用不可能なレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_status_replicas_updated

Deploymentごとの更新されたレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_status_observed_generation

Deploymentコントローラーが観測した生成

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_status_condition

Deploymentの現在の状態

instance: インスタンス識別文字列

job: ジョブ名

deployment=deployment-name

namespace=deployment-namespace

condition=deployment-condition

status=true|false|unknown

kube_deployment_spec_replicas

Deploymentの必要なポッド数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_spec_paused

Deploymentが一時停止され,Deploymentコントローラーで処理されないかどうか

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_spec_strategy_rollingupdate_max_unavailable

Deploymentのローリングアップデート中に,利用できないレプリカの最大数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_spec_strategy_rollingupdate_max_surge

Deploymentのローリングアップデート中に,希望するレプリカの数を超えてスケジュールできる最大数

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_metadata_generation

希望する状態の特定の生成を表すシーケンス番号

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_deployment_created

Unix作成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

daemonset=daemonset-name

namespace=daemonset-namespace

kube_job_info

Jobの情報

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

label_JOB_LABEL=JOB_LABEL

kube_job_owner

Jobのオーナーの情報

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

owner_kind=owner kind

owner_name=owner name

owner_is_controller=whether owner is controller

kube_job_spec_parallelism

Jobが任意の時間に実行すべきpodの最大希望数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_spec_completions

Jobの実行に必要な正常に終了したポッドの数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_spec_active_deadline_seconds

システムが終了させようとする前にJobがアクティブである可能性がある開始時間からの秒数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_status_active

アクティブに動作しているポッド数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_status_succeeded

Phase Succceededに到達したポッド数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_status_failed

Phase Failedに到達したポッド数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

reason=failure reason

kube_job_status_start_time

ジョブマネージャーによってJobが承認された時刻

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_status_completion_time

Jobが完了した時刻

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_job_complete

Jobの実行が完了

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

condition=true|false|unknown

kube_job_failed

Jobの実行に失敗

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

condition=true|false|unknown

kube_job_created

Unix作成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_status_replicas

ReplicaSetごとのレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_status_fully_labeled_replicas

ReplicaSetごとの完全ラベル付けされたレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_status_ready_replicas

ReplicaSetごとの準備レプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_status_observed_generation

ReplicaSetコントローラーが観測した生成

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_spec_replicas

ReplicaSetが必要とするポッド数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_metadata_generation

希望する状態の特定の生成を表すシーケンス番号

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

replicaset=replicaset-name

namespace=replicaset-namespace

label_REPLICASET_LABEL=REPLICASET_LABEL

kube_replicaset_created

Unix作成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_replicaset_owner

ReplicaSetのオーナー情報

instance: インスタンス識別文字列

job: ジョブ名

replicaset=replicaset-name

namespace=replicaset-namespace

owner_kind=owner kind

owner_name=owner name

owner_is_controller=whether owner is controller

kube_statefulset_status_replicas

StatefulSetごとのレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_status_replicas_current

StatefulSetごとの現在のレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_status_replicas_ready

StatefulSetごとの準備レプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_status_replicas_updated

StatefulSetごとのアップデートレプリカ数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_status_observed_generation

StatefulSetコントローラーが観測した生成

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_replicas

StatefulSetが必要とするポッド数

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_metadata_generation

StatefulSetの希望する状態の生成を表すシーケンス番号

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_created

Unix生成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

job_name=job-name

namespace=job-namespace

kube_statefulset_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

statefulset=statefulset-name

namespace=statefulset-namespace

label_STATEFULSET_LABEL=STATEFULSET_LABEL

kube_statefulset_status_current_revision

0,currentReplicasの順でポッドを生成するために使用されるStatefulSetのバージョン

instance: インスタンス識別文字列

job: ジョブ名

statefulset=statefulset-name

namespace=statefulset-namespace

revision=statefulset-current-revision

kube_statefulset_status_update_revision

replicas-updateReplicas,replicasの順でポッドを生成するために使用されるStatefulSetのバージョン

instance: インスタンス識別文字列

job: ジョブ名

statefulset=statefulset-name

namespace=statefulset-namespace

revision=statefulset-current-revision

kube_namespace_created

Unix生成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

namespace=namespace-name

kube_namespace_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

namespace=namespace-name

label_NS_LABEL=NS_LABEL

kube_namespace_status_phase

kubernetes名前空間の状態フェーズ

instance: インスタンス識別文字列

job: ジョブ名

namespace=namespace-name

phase=Active|Terminating

kube_node_info

クラスターノードの情報

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

kernel_version=kernel-version

os_image=os-image-name

container_runtime_version=container-runtime-and-version-combination

kubelet_version=kubelet-version

kubeproxy_version=kubeproxy-version

pod_cidr=pod-cidr

provider_id=provider-id

system_uuid=system-uuid

internal_ip=internal-ip

kube_node_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

label_NODE_LABEL=NODE_LABEL

kube_node_spec_unschedulable

ノードが新しいポッドをスケジュールできるかどうか

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

kube_node_spec_taint

クラスターノードのtaint

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

key=taint-key

value=taint-value

effect=taint-effect

kube_node_status_capacity

ノードの異なるリソースに対する容量

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

resource=resource-name

unit=resource-unit

kube_node_status_allocatable

スケジュール可能なノードの異なるリソースに割り当てることが可能な状態

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

resource=resource-name

unit=resource-unit

kube_node_status_condition

クラスターノードの状態

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

condition=node-condition

status=true|false|unknown

kube_node_created

Unix生成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

node=node-address

kube_pod_info

ポッドの情報

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

host_ip=host-ip

pod_ip=pod-ip

node=node-name

created_by_kind=created_by_kind

created_by_name=created_by_name

uid=pod-uid

priority_class=priority_class

host_network=host_network

kube_pod_start_time

unixタイムスタンプにおけるポッドの開始時間

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

ip=pod-ip-address

ip_family=4 OR 6

uid=pod-uid

kube_pod_completion_time

unixタイムスタンプにおけるポッドの完了時間

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_owner

ポッドのオーナー情報

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

owner_kind=owner kind

owner_name=owner name

owner_is_controller=whether owner is controller

uid=pod-uid

kube_pod_labels

KubernetesのラベルをPrometheusのラベルに変換したもの

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

label_POD_LABEL=POD_LABEL

uid=pod-uid

kube_pod_status_phase

ポッドの現在のフェーズ

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

phase=Pending|Running|Succeeded|Failed|Unknown

uid=pod-uid

kube_pod_status_ready

ポッドがリクエストを処理する準備ができているかどうか

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

condition=true|false|unknown

uid=pod-uid

kube_pod_status_scheduled

ポッドのスケジューリングプロセスの状態

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

condition=true|false|unknown

uid=pod-uid

kube_pod_container_info

ポッド内のコンテナの情報

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

image=image-name

image_id=image-id

image_spec=image-spec

container_id=containerid

uid=pod-uid

kube_pod_container_status_waiting

コンテナが現在待機状態かどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_container_status_waiting_reason

コンテナが現在待機状態である理由

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

reason=container-waiting-reason

uid=pod-uid

kube_pod_container_status_running

コンテナが現在実行状態かどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_container_state_started

Unitタイムスタンプにおけるポッドコンテナの開始時間

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_container_status_terminated

コンテナが現在終了状態かどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_container_status_ready

コンテナのreadinessチェックが成功したかどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_container_status_restarts_total

コンテナごとの再開したコンテナの数(累積値)

container=container-name

namespace=pod-namespace

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

uid=pod-uid

kube_pod_created

Unix生成タイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_restart_policy

ポッドで使用されている再起動ポリシー

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

type=Always|Never|OnFailure

uid=pod-uid

kube_pod_init_container_info

ポッド内のinitコンテナの情報

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

image=image-name

image_id=image-id

image_spec=image-spec

container_id=containerid

uid=pod-uid

kube_pod_init_container_status_waiting

initコンテナが現在待機状態かどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_init_container_status_running

initコンテナが現在実行状態であるかどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_init_container_status_terminated

initコンテナが現在終了状態であるかどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_init_container_status_ready

initコンテナのreadinessチェックが成功したかどうか

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_init_container_status_restarts_total

initコンテナが再開した数(累積値)

instance: インスタンス識別文字列

job: ジョブ名

container=container-name

namespace=pod-namespace

pod=pod-name

uid=pod-uid

kube_pod_spec_volumes_persistentvolumeclaims_info

ポッド内の永続ボリュームの情報

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

volume=volume-name

persistentvolumeclaim=persistentvolumeclaim-claimname

uid=pod-uid

kube_pod_spec_volumes_persistentvolumeclaims_readonly

永続ボリュームが読み込み権限だけでマウントされているかどうか

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

volume=volume-name

persistentvolumeclaim=persistentvolumeclaim-claimname

uid=pod-uid

kube_pod_status_scheduled_time

ポッドがスケジュール状態に移行したときのUnixタイムスタンプ

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

uid=pod-uid

kube_pod_status_unschedulable

ポッドのスケジュールできない状態

instance: インスタンス識別文字列

job: ジョブ名

pod=pod-name

namespace=pod-namespace

uid=pod-uid

■スクレイプ対象がnode_exporterの場合

9.5.3(2)(d)Node exporter」の「主な取得項目」を参照してください。

■スクレイプ対象がkubeletの場合

メトリック名

取得する内容

ラベル

container_blkio_device_usage_total

ブロックI/Oデバイスの使用バイト数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

major: メジャーID

minor: マイナーID

operation: オペレーション(Async/Sync/Discard/Read/Write/Total)

container_cpu_cfs_periods_total

施行経過期間の間隔数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_cpu_cfs_throttled_periods_total

絞られた期間の間隔数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_cpu_cfs_throttled_seconds_total

コンテナが絞られた合計時間(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_cpu_system_seconds_total

累積システムCPU消費時間(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_cpu_usage_seconds_total

累積CPU消費時間(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

cpu: CPU名

container_cpu_user_seconds_total

累積ユーザCPU消費時間(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_fs_inodes_free

利用可能なInode数

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_inodes_total

合計Inode数

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_io_current

現在処理中のI/O数

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_io_time_seconds_total

累積I/O秒数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_io_time_weighted_seconds_total

累積重みづけI/O時間(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_limit_bytes

コンテナがこのファイルシステムで消費できるバイト数

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_reads_bytes_total

累積読み込みバイト数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_read_seconds_total

累積読み込み秒数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_reads_merged_total

マージされた書き込み累積数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_reads_total

累積読み込み完了数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_sector_reads_total

累積セクタ読み込み完了数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_sector_writes_total

累積セクタ書き込み完了数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_usage_bytes

コンテナがこのファイルシステムで消費したバイト数

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_writes_bytes_total

累積書き込みバイト数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_write_seconds_total

累積書き込み秒数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_writes_merged_total

マージされた書き込み累積数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_fs_writes_total

累積書き込み完了数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

device: デバイス名

container_memory_cache

合計ページキャッシュメモリ

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_failcnt

メモリ使用量制限のヒット数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_failures_total

累積メモリ割り当て失敗数(累積値)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

failure_type: 失敗原因(pgfault/pgmajfault)

scope: スコープ(container/hierarchy)

container_memory_mapped_file

メモリマップトファイルのサイズ

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_max_usage_bytes

記録された最大メモリ使用量

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_rss

RSSのサイズ

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_swap

コンテナスワップ使用量

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_usage_bytes

現在のメモリ使用量(いつアクセスされたかは問わず,すべてのメモリを含む)

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_memory_working_set_bytes

現在のワーキングセット

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_spec_cpu_period

CPU制限時間

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_spec_cpu_quota

CPUクォータ

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_spec_cpu_shares

CPUシェア

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_spec_memory_limit_bytes

メモリ制限

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_spec_memory_reservation_limit_bytes

メモリ予約制限

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

container_spec_memory_swap_limit_bytes

メモリスワップ制限

id: コンテナID

name: コンテナ名

image: イメージ名

container: コンテナ名(kubernetes定義)

namespace: ネームスペース

pod: ポッド名

(i) Kubernetes

Kubernetesでは,Kubernetes環境を監視しているユーザー独自のPrometheusがスクレイプ対象(kube-state-metrics,node_exporter,kubelet)から取得した稼働情報を,JP1/IM - Managerに送信します。

Kubernetesの監視対象のコンポーネント名を,次の表に示します。

構成要素名

監視対象

コンポーネント名

クラスタ

Cluster

Control Plane

ホスト

※1

Node

サービス(apiserverなど)

ワーカーノード

ホスト

※1

Node

サービス(apiserverなど)

コンテナ

Namespace

※1

Namespace

ワークロード※2

※1

注※2の表を参照してください。

ポッド

Pod

(凡例)

○:監視する −:監視しない

注※1

AKSでは取得できません。

注※2

ワークロードには,次の6つの種別があります。

ワークロードの種別

コンポーネント名

CronJob

CronJob

Job

Job

DaemonSet

DaemonSet

Deployment

Deployment

ReplicaSet

ReplicaSet

StatefulSet

StatefulSet

■ 主な取得項目

12.5.2(2)(h)Red Hat OpenShift」の「主な取得項目」を参照してください。

(j) Amazon Elastic Kubernetes Service(EKS)

Amazon Elastic Kubernetes Service(EKS)では,PrometheusまたはADOT(AWS Distro for OpenTelemetry)エージェント(Prometheus receiverとexporterを使用)がスクレイプ対象(kube-state-metrics,node_exporter,kubelet)から収集した情報を,JP1/IM - Managerに送信します。

なお,次の表に示すように,監視対象のサービスがEKS on Fargateの場合,ポッドの性能情報をするためには,ADOTエージェントを使用する必要があります。

収集ツール

監視対象のサービス

EKS on EC2

EKS on Fargate

Prometheus

ADOTエージェント

(凡例)

○:メトリクスを収集できます(ポッドの性能情報を取得できます)。

△:メトリクスを収集できます(ポッドの性能情報を取得できません)。

■ 主な取得項目

12.5.2(2)(h)Red Hat OpenShift」の「主な取得項目」を参照してください。

(k) Azure Kubernetes Service(AKS)

Azure Kubernetes Service(AKS)の監視では,Azure監視機能(Promitor)を使用して,AKSのデフォルトの情報を取得します。Promitorの詳細については,「12.5.2(2)(f)Promitor」を参照してください。

■ 主な取得項目

PromitorによるAKS監視の主な取得項目は,Promitorのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」の「Promitorのメトリック定義ファイル(metrics_promitor.conf)」を参照してください。

Promitorのメトリック定義ファイルには,取得項目を追加できます。定義ファイル内で記述するPromQL文で指定できるAKS監視のメトリックについては,「12.5.2(2)(f)Promitor」の「収集できるメトリック」を参照してください。

(l) ログメトリクス機能

監視対象が出力するログファイルからログメトリクスを生成・計測する機能です。

■ 主な取得項目

監視対象が出力するログファイルから数値化する定義は,ログメトリクス定義ファイル(fluentd_任意の名前_logmetrics.conf)で行います。定義によって数値化したデータ(ログメトリクス)が取得項目となります。

ログメトリクス定義ファイルの詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」の「ログメトリクス定義ファイル(fluentd_任意の名前_logmetrics.conf)」を参照してください。

■ サンプルファイル

ログメトリクス機能を使用する場合のサンプルファイルについて説明します。サンプルファイルをコピーして使用する場合は,改行コードに注意してください。改行コードについては,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「2. 定義ファイル」および「10. IMエクスポーターの定義ファイル」の各ファイルの説明を参照してください。このサンプルファイルは,下記の「■サンプルファイルの想定条件」に従うサンプルファイルであるため,実際の監視対象に応じて,各ファイルを複製し,設定値を書き換えてください。

■サンプルファイルの想定条件

ここで説明するサンプルファイルは,JP1/IM - Agentがインストールされている監視対象ホスト「HostA」(統合エージェントホスト)が存在し,HostAで稼働しているアプリケーション「WebAppA」が,次に示すログファイルを出力している場合を想定しています。

ControllerLog.log

対象ログメッセージ1に示すように,WebAppAのHTTPエンドポイントのリクエスト処理の開始時に,そのエンドポイントを利用するというログメッセージが出力される。ログメッセージには,リクエスト処理時に取り扱うレコードの数も出力されている。

<対象ログメッセージ1>

:
2022-10-19 10:00:00 [INFO] c.b.springbootlogging.LoggingController : endpoint "/register" started. Target record: 5.
:

サンプルファイルでは,ログメッセージの正規表現を指定することで,対象ログメッセージ1と合致するログメッセージの数を計上し,ログメトリクス1「registerへのリクエスト数」として,JP1/IMの統合オペレーション・ビューアーの[トレンド]タブに表示する。

このログメトリクス1の定義では,ログメトリクスタイプとしてcounterを利用する。

また,ログメッセージの正規表現を指定することで,対象ログメッセージ1から「Target record」の数を抽出して累計し,ログメトリクス2「登録されたレコード数」として,JP1/IMの統合オペレーション・ビューアーの[トレンド]タブに表示する。

このログメトリクス2の定義では,ログメトリクスタイプとしてcounterを利用する。

Fluentdのworker(複数プロセス起動機能)は,監視対象とするログファイルの数だけ用意します。ログメトリクス機能に関するworkerの設定については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」の「ログメトリクス定義ファイル(fluentd_任意の名前_logmetrics.conf)」を参照してください。ここでは,Fluentdのworkerが11個起動しているものとし,ControllerLog.logをFluentdの「workerのid」が10のworkerで監視しているものとします。

また,サンプルファイルでは,次に示すIM管理ノードのツリーを想定しています。

All Systems
└ ホストA
  └ Application Server
   └ WebAppA
■サンプルファイルの対象ファイル

サンプルファイルの対象ファイルを次に示します。

  • 統合マネージャーホスト

    ・ユーザー独自のメトリック定義ファイル

  • 統合エージェントホスト

    ・Prometheus設定ファイル

    ・ユーザー独自のディスカバリ設定ファイル

    ・ログメトリクス定義ファイル

    ・Fluentdのログ監視対象定義ファイル

■「ユーザー独自のメトリック定義ファイル」のサンプルファイル

・ファイル名:metrics_logmatrics1.conf

・記述内容

[
  {
    "name":"logmetrics_request_endpoint_register",
    "default":true,
    "promql":"logmetrics_request_endpoint_register and $jp1im_TrendData_labels",
    "resource_en":{
      "category":"HTTP",
      "label":"request_num_of_endpoint_register",
      "description":"The request number of endpoint register",
      "unit":"request"
    },
    "resource_ja":{
      "category":"HTTP",
      "label":"registerへのリクエスト数",
      "description":"The request number of endpoint register",
      "unit":"リクエスト"
    }
  },
  {
    "name":"logmetrics_num_of_registeredrecord",
    "default":true,
    "promql":"logmetrics_num_of_registeredrecord and $jp1im_TrendData_labels",
    "resource_en":{
      "category":"DB",
      "label":"logmetrics_num_of_registeredrecord",
      "description":"The number of registered record",
      "unit":"record"
    },
    "resource_ja":{
      "category":"DB",
      "label":"登録されたレコード数",
      "description":"The number of registered record",
      "unit":"レコード"
    }
  }
]

格納先ディレクトリ,記述内容,およびファイル名は,「ユーザー独自のメトリック定義ファイル(metrics_任意のPrometheusトレンド名.conf)」の形式に従っています。

■「Prometheus設定ファイル」のサンプルファイル

・ファイル名:jpc_prometheus_server.yml

・記述内容

global:
 :
(略)
 :
scrape_configs:
  - job_name: 'LogMetrics'
    
    file_sd_configs:
      - files:
        - 'user/user_file_sd_config_logmetrics.yml'
    
    relabel_configs:
      - target_label: jp1_pc_nodelabel
        replacement: Log trapper(Fluentd)
    
    metric_relabel_configs:
      - target_label: jp1_pc_nodelabel
        replacement: ControllerLog
      - source_labels: ['__name__']
        regex: 'logmetrics_request_endpoint_register|logmetrics_num_of_registeredrecord'
        action: 'keep'
      - regex: (jp1_pc_multiple_node|jp1_pc_agent_create_flag)
        action: labeldrop
 
 :
(略)
 :

格納先ディレクトリおよび記述内容は,「Prometheus設定ファイル(jpc_prometheus_server.yml)」の形式に従っています。新規にファイルを作成する必要はなく,インストール時に生成されるPrometheus設定ファイル(jpc_prometheus_server.yml)に,ログメトリクス機能のためのscrape_configsの定義を追加します。

■「ユーザー独自のディスカバリ設定ファイル」のサンプルファイル

・ファイル名:user_file_sd_config_logmetrics.yml

・記述内容

- targets:
  - HostA:24830
  labels:
    jp1_pc_exporter: logmetrics
    jp1_pc_category: WebAppA
    jp1_pc_trendname: logmetrics1
    jp1_pc_multiple_node: "{__name__=~'logmetrics_.*'}"
    jp1_pc_agent_create_flag: false

格納先ディレクトリおよび記述内容は,「ユーザー独自のディスカバリ設定ファイル(file_sd_config_任意の名前.yml)」の形式に従っています。

targetsのポート番号は,ControllerLog.logをFluentdの「workerのid」 が10のworkerで監視しているため,下記の「■「ログメトリクス定義ファイル」のサンプルファイル」のportで設定した「24820」に対して,ControllerLog.logを監視しているworkerのポート番号が24820+10=24830となります。

■「ログメトリクス定義ファイル」のサンプルファイル

ファイル名:fluentd_WebAppA_logmetrics.conf

・記述内容

## Input
<worker 10>
  <source>
    @type prometheus
    bind '0.0.0.0'
    port 20732
    metrics_path /metrics
  </source>
</worker>
##対象ログメッセージ1の抽出
<worker 10>
  <source>
    @type tail
    @id logmetrics_counter
    path /usr/lib/WebAppA/ControllerLog/ControllerLog.log
    tag WebAppA.ControllerLog
    pos_file ../data/fluentd/tail/ControllerLog.pos
    read_from_head true
    <parse>
      @type regexp
      expression /^(?<logtime>[^\[]*) \[(?<loglebel>[^\]]*)\] (?<class>[^\[]*) : endpoint "\/register" started. Target record: (?<record_num>\d[^\[]*).$/
      time_key logtime
      time_format %Y-%m-%d %H:%M:%S
      types record_num:integer
    </parse>
  </source>
 
## Output
##ログメトリクス1とログメトリクス2の定義
  <match WebAppA.ControllerLog>
    @type prometheus
    <metric>
      name logmetrics_request_endpoint_register
      type counter
      desc The request number of endpoint register
    </metric>
    <metric>
      name logmetrics_num_of_registeredrecord
      type counter
      desc The number of registered record
      key record_num
      <labels>
      loggroup ${tag_parts[0]}
      log ${tag_parts[1]}
      </labels>
    </metric>
  </match>
</worker>

格納先ディレクトリおよび記述内容は,「ログメトリクス定義ファイル(fluentd_任意の名前_logmetrics.conf)」の形式に従っています。

■「Fluentdのログ監視対象定義ファイル」のサンプルファイル

・ファイル名:jpc_fluentd_common_list.conf

・記述内容

## [Target Settings]
 :
(略)
 :
@include user/fluentd_WebAppA_logmetrics.conf

格納先ディレクトリおよび記述内容は,「JP1/IM - Agentの定義ファイル」の「Fluentdのログ監視対象定義ファイル(jpc_fluentd_common_list.conf)」の形式に従っています。新規にファイルを作成する必要はなく,インストール時に生成されるFluentdのログ監視対象定義ファイル(jpc_fluentd_common_list.conf)に,ログメトリクス機能のためのincludeの定義を追加します。

(m) Script exporter

Script exporterは,ホスト上に存在するスクリプトを実行し,結果を取得するExporterです。

Script exporterは,Prometheusと同じホストにインストールされ,Prometheus serverからのスクレイプ要求を契機に,同ホストのスクリプトを実行して結果を取得し,Prometheus serverに返却します。

Script exporterに,UAPの情報を取得してメトリクスに変換するなどのスクリプトを作り込むことで,Exporterが対応していないアプリケーションでも自由な監視ができます。

■ 主な取得項目

Script exporterの主な取得項目は,Script exporterのメトリック定義ファイル(初期状態)で定義しています。詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「10. IMエクスポーターの定義ファイル」の「Script exporterのメトリック定義ファイル(metrics_script_exporter.conf)」を参照してください。

メトリック定義ファイルには,取得項目を追加できます。定義ファイル内で記述するPromQL文で指定できるメトリックを,次に示します。

メトリック名

取得する内容

ラベル

script_success

スクリプトの終了ステータス(失敗時0, 成功時1)

instance: インスタンス識別文字列

job: ジョブ名

script: スクリプト名

script_duration_seconds

スクリプトの実行時間(秒)

instance: インスタンス識別文字列

job: ジョブ名

script: スクリプト名

script_exit_code

スクリプトの終了コード

instance: インスタンス識別文字列

job: ジョブ名

script: スクリプト名