IBM Cloud Docs
Code Engine のモニタリング

Code Engine のモニタリング

IBM Cloud® Code Engine でデプロイされたワークロードのパフォーマンスを洞察します。 メトリックは、ボトルネックを見つけたり実動上の問題の可能性を予測したりするのに役立ちます。

IBM Cloud® Monitoringサービスを使用して、Code Engineワークロードをモニターできます。 Code Engineは、ワークロードに関する選択された情報をMonitoringに転送して、要求、改訂、期間などの特定のメトリックをモニターできるようにします。

IBM Cloud Monitoring サービス・インスタンスのセットアップ

Monitoringで Code Engine カスタマー・メトリック・ダッシュボードをセットアップするには、 Monitoring インスタンスを作成してから、モニターする Code Engine プロジェクトと同じ地域でプラットフォーム・メトリックを有効にする必要があります。 複数のリージョンにデプロイメントが存在する場合は、リージョンごとに Monitoring をプロビジョンしてプラットフォーム・メトリックを有効にする必要があります。 詳しくは、『Monitoring 入門チュートリアル』を参照してください。

Monitoring をセットアップするには、以下のようにします。

  1. IBM Cloud ナビゲーション・メニューの**「プログラム識別情報」**を選択します。
  2. **「モニタリング」**を選択します。
  3. 既存の Monitoring サービス・インスタンスを使用するか、新しいサービス・インスタンスを作成します。
  4. インスタンスの準備ができたら、**「プラットフォーム・メトリックの構成」**をクリックしてプラットフォーム・メトリックを有効にします。
  5. リージョンを選択し、そのリージョンから Monitoring インスタンスを選択します。 複数のリージョンにデプロイメントが存在する場合は、リージョンごとに Monitoring をプロビジョンしてプラットフォーム・メトリックを有効にする必要があります。

Code Engine ダッシュボードで**「モニタリングの起動」**を選択してモニタリングを開始することもできます。

ダッシュボード・テンプレートのコピーを作成して編集することで、ダッシュボードを適合させることができます。

IBM Cloud Monitoring メトリックへのアクセス

Code Engine で Monitoring カスタマー・メトリック・ダッシュボードを表示するには、以下のようにします。

  1. IBM Cloud ナビゲーション・メニューの**「プログラム識別情報」**を選択します。
  2. **「モニタリング」**を選択します。
  3. ダッシュボードを開くをクリックして、モニター・インスタンスのダッシュボードを開きます。
  4. ナビゲーション・メニューから、 「ダッシュボード->IBM->IBM Code Engine 「プロジェクトの概要」 または 「ダッシュボード->IBM->IBM Code Engine 関数の概要」 を選択します。 メニューに Code Engine ダッシュボードが表示されない場合は、**「モニタリングの起動」**を選択して、Code Engine アプリケーションまたはジョブからモニタリングを開始できます。
  5. 10M タイムライン以上を選択します。 プラットフォーム・メトリックのデータの細分度は 1 分であるため、メトリックを示す最初のタイムラインは 10M タイムラインです。

Code Engine アクション・メニューからモニタリングを選択して、いつでも Monitoring ダッシュボードを開始することもできます。

IBM Cloud Monitoring サービスを使用して Code Engine ワークロードをモニターすると、 Monitoringでデータが処理されて使用可能になる前に遅延が発生することがあります。 例えば、モニター・インスタンスを作成した直後に、意味のあるモニター・データが表示されるまでに数分かかります。 モニター・データが Monitoringに表示されるまで約 5 分かかる場合があることに注意してください。

Code Engine で使用可能なメトリック

表 1: Code Engineで使用可能なメトリック
メトリック名
ibm_codeengine_application_actual_instances
ibm_codeengine_application_requested_instances
ibm_codeengine_application_not_ready_instances
ibm_codeengine_application_pending_instances
ibm_codeengine_application_desired_instances
ibm_codeengine_application_terminating_instances
ibm_codeengine_application_requests_total
ibm_codeengine_application_revision_count
ibm_codeengine_application_service_count
ibm_codeengine_application_route_count
ibm_codeengine_application_target_concurrency_per_pod
ibm_codeengine_application_panic_request_concurrency
ibm_codeengine_application_stable_request_concurrency
ibm_codeengine_application_panic_mode
ibm_codeengine_functions_activations
ibm_codeengine_functions_exceeded_limit
ibm_codeengine_functions_execution_time_count
ibm_codeengine_functions_execution_time_sum
ibm_codeengine_functions_init_time_count
ibm_codeengine_functions_init_time_sum
ibm_codeengine_functions_status_success
ibm_codeengine_functions_status_error_application
ibm_codeengine_functions_status_error_developer
ibm_codeengine_jobruns

ibm_codeengine_application_actual_instances

現在割り振られているポッドの数。

このメトリックは、自動アプリケーション・スケーリングの動作を監視し、実行中のアプリケーション・インスタンスの数を監視するために使用します。 この値をモニターして、アプリケーションの構成可能値を調整する必要があるかどうかを判別します。

アプリの実行中のインスタンスの数は、構成設定およびワークロードに基づいて自動的にスケールアップまたはスケールダウンされます。 アプリケーション・スケーリングは構成可能です。 アプリケーション・スケーリングの構成 を参照して、 アプリケーションのデフォルトと制限 に注意してください。

表 2: 現在割り振られているポッドの数
メタデータ 説明
Metric Name ibm_codeengine_application_actual_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_requested_instances

Kubernetes から自動スケーラーが要求したポッド数。

このメトリックは、自動アプリケーション・スケーリングの動作を監視するために使用します。 この値をモニターして、アプリケーションの構成可能値を調整する必要があるかどうかを判別します。

アプリの実行中のインスタンスの数は、構成設定およびワークロードに基づいて自動的にスケールアップまたはスケールダウンされます。 アプリケーション・スケーリングは構成可能です。 アプリケーション・スケーリングの構成 を参照して、 アプリケーションのデフォルトと制限 に注意してください。

表 3: 自動スケーリング機能が要求したポッドの数
メタデータ 説明
Metric Name ibm_codeengine_application_requested_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_not_ready_instances

現在作動不可のポッド数。

このメトリックは、実行中のアプリケーションに問題があるかどうかを監視するために使用します。

作動不能 状態のアプリケーション・インスタンスは、要求を処理できません。 この 作動不能 状態は、何かが原因でアプリが作動可能になっていないことを示します。

表 4: 現在準備ができていないポッドの数
メタデータ 説明
Metric Name ibm_codeengine_application_not_ready_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_pending_instances

現在保留中のポッド数。

このメトリックは、実行中のアプリケーションに問題があるかどうかを監視するために使用します。

自動アプリケーション・スケーリングを監視すると、保留中のアプリケーションを監視することができます。 保留中のアプリケーション・インスタンスは、スケジュールされるのを待機しています。 アプリケーションが保留状態のままである場合は、メモリーや CPU などのリソースが不足しているためにアプリケーションを開始できない可能性があります。 サポートされるメモリーと CPU の組み合わせを参照してください。

表 5: 現在保留中のポッドの数
メタデータ 説明
Metric Name ibm_codeengine_application_pending_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_desired_instances

自動スケーラーが割り振ろうとするポッド数。

このメトリックは、自動アプリケーション・スケーリングの動作を監視するために使用します。 この値をモニターして、アプリケーションの構成可能値を調整する必要があるかどうかを判別します。

アプリの実行中のインスタンスの数は、構成設定およびワークロードに基づいて自動的にスケールアップまたはスケールダウンされます。 アプリケーション・スケーリングは構成可能です。 アプリケーション・スケーリングの構成 を参照して、 アプリケーションのデフォルトと制限 に注意してください。

表 6: 自動スケーリング機能が割り振る必要があるポッドの数
メタデータ 説明
Metric Name ibm_codeengine_application_desired_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_terminating_instances

現在強制終了中のポッド数。

このメトリックは、自動アプリケーション・スケーリングの動作を監視するために使用します。 この値をモニターして、アプリケーションがスケールダウンされたときにアプリケーションが終了するかどうかを監視します。

アプリの実行中のインスタンスの数は、構成設定およびワークロードに基づいて自動的にスケールアップまたはスケールダウンされます。 アプリケーション・スケーリングは構成可能です。 アプリケーション・スケーリングの構成 を参照して、 アプリケーションのデフォルトと制限 に注意してください。

表 7: 現在終了中のポッドの数
メタデータ 説明
Metric Name ibm_codeengine_application_terminating_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_requests_total

アプリケーションに対する HTTPS 要求の総数。

このメトリックは、アプリケーションが受信する HTTPS 要求の数をモニターするために使用します。

表 8: アプリケーションに対する HTTPS 要求の総数
メタデータ 説明
Metric Name ibm_codeengine_application_requests_total
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name, http status code

ibm_codeengine_application_revision_count

アプリケーションあたりのリビジョン数。

このメトリックは、アプリケーションごとのリビジョン数を監視するために使用します。

アプリケーションには 1 つ以上のリビジョンが含まれています。 アプリケーション構成プロパティーを更新するたびに、アプリケーションの新規リビジョンが作成されます。 Code Engine には、プロジェクト内のアプリおよびアプリ・リビジョンの数の割り当て量があります。 プロジェクトの制限について詳しくは、プロジェクトの割り当て量を参照してください。

表 9: アプリケーションごとの改訂数
メタデータ 説明
Metric Name ibm_codeengine_application_revision_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_service_count

プロジェクトあたりのアプリケーション数。

このメトリックは、プロジェクト内のアプリケーションの数を監視するために使用します。

Code Engine では、プロジェクト内のアプリ・リビジョン数の割り当て量が設定されています。 プロジェクトの制限について詳しくは、プロジェクトの割り当て量を参照してください。

表 10: プロジェクトごとのアプリケーション数
メタデータ 説明
Metric Name ibm_codeengine_application_service_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_route_count

アプリケーションあたりの経路数。

Code Engine では、アプリケーションごとに 1 つの経路のみがサポートされます。

表 11: アプリケーションごとの経路の数
メタデータ 説明
Metric Name ibm_codeengine_application_route_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_target_concurrency_per_pod

ポッドごとのご希望の並行要求数。

このメトリックは、アプリケーションに対して設定されているターゲット並行性の値を監視するために使用します。

アプリケーション・スケーリングのターゲット並行性は構成可能です。 アプリケーションのスケーリングの構成を参照してください。

表 12: 各ポッドに対して必要な同時要求の数
メタデータ 説明
Metric Name ibm_codeengine_application_target_concurrency_per_pod
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_panic_request_concurrency

パニック時間枠の平均要求数。

このメトリックは、自動アプリケーション・スケーリングの動作を監視するために使用します。 この値をモニターして、アプリケーション・トラフィックがバーストで到着するかどうか、またはトラフィックが安定しているかどうかを監視します。

stable モードは一般的な操作に使用されますが、 パニック ・モードはウィンドウが大幅に短く、トラフィックのバーストが発生した場合にアプリケーション・リビジョンを素早くスケールアップするために使用されます。

表 13: パニック・ウィンドウでの要求数の平均
メタデータ 説明
Metric Name ibm_codeengine_application_panic_request_concurrency
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_stable_request_concurrency

安定時間枠の平均要求数。

このメトリックは、自動アプリケーション・スケーリングの動作を監視するために使用します。 この値をモニターして、アプリケーション・トラフィックがバーストで到着するかどうか、またはトラフィックが安定しているかどうかを監視します。

stable モードは一般的な操作に使用されますが、 パニック ・モードはウィンドウが大幅に短く、トラフィックのバーストが発生した場合にアプリケーション・リビジョンを素早くスケールアップするために使用されます。

表 14: 安定ウィンドウでの要求数の平均カウント
メタデータ 説明
Metric Name ibm_codeengine_application_stable_request_concurrency
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_panic_mode

パニック・モードを有効にするかどうかを指定します。

このメトリックは、自動アプリケーション・スケーリングの動作を監視するために使用します。 この値をモニターして、パニック・モードが使用されているかどうかを監視します。

stable モードは一般的な操作に使用されますが、 パニック ・モードはウィンドウが大幅に短く、トラフィックのバーストが発生した場合にアプリケーション・リビジョンを素早くスケールアップするために使用されます。

表 15: パニック・モードが有効かどうかを示します
メタデータ 説明
Metric Name ibm_codeengine_application_panic_mode
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_functions_activations

呼び出された関数の数。

表 16: 呼び出される関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_activations
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_exceeded_limit

プロジェクトの制限を超えた後に起動される関数の数。 プロジェクトの制限について詳しくは、プロジェクトの割り当て量を参照してください。

表 17: プロジェクト制限を超えた後に呼び出される関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_exceeded_limit
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_execution_time_count

実行が完了した、呼び出された関数の数。

ibm_codeengine_functions_execution_time_count および ibm_codeengine_functions_execution_time_sum メトリックは、呼び出された関数ごとの平均実行時間を判別するために使用されます。

表 18: 実行を完了する呼び出された関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_execution_time_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_execution_time_sum

完了までに実行された、呼び出された関数のすべての実行時間の合計。

ibm_codeengine_functions_execution_time_count および ibm_codeengine_functions_execution_time_sum メトリックは、呼び出された関数ごとの平均実行時間を判別するために使用されます。

表 19: 呼び出された関数のすべての実行時間の合計
メタデータ 説明
Metric Name ibm_codeengine_functions_execution_time_sum
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_init_time_count

コードが Code Engine にロードされ、実行の準備ができているなど、初期化を完了した関数の数。

ibm_codeengine_functions_init_time_count および ibm_codeengine_functions_init_time_sum メトリックは、呼び出された関数の平均初期化時間を判別するために使用されます。

表 20: 初期化を完了する関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_init_time_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_init_time_sum

呼び出された関数のすべての初期化時間の合計。

ibm_codeengine_functions_init_time_count および ibm_codeengine_functions_init_time_sum メトリックは、呼び出された関数の平均初期化時間を判別するために使用されます。

表 21: 呼び出された関数のすべての初期化時間の合計
メタデータ 説明
Metric Name ibm_codeengine_functions_init_time_sum
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_status_success

正常に呼び出された関数の数。 Code Engine で関数が正常に呼び出されるのは、関数が初期化を完了し、完了するまで実行し、関数コードが正常な HTTP 応答状況コードで応答した後です。

表 22: 正常に呼び出された関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_status_success
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_status_error_application

Code Engine の処理中に失敗した、呼び出された関数の数。

表 23: Code Engine内で失敗した呼び出された関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_status_error_application
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_status_error_developer

コード内のエラーで失敗した、呼び出された関数の数。

表 24: コード内のエラーで失敗した呼び出し対象関数の数
メタデータ 説明
Metric Name ibm_codeengine_functions_status_error_developer
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_jobruns

ジョブ実行の総数。

このメトリックは、プロジェクト内のジョブ実行の数をモニターするために使用します。 Code Engine には、プロジェクト内のジョブとジョブ実行の数の割り当て量があります。 プロジェクトの制限について詳しくは、プロジェクトの割り当て量を参照してください。

表 25: ジョブ実行の合計数
メタデータ 説明
Metric Name ibm_codeengine_jobruns
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, job Name, jobrun condition

セグメント化のための属性

グローバル属性

以下の属性は、前述のすべてのメトリックをセグメント化するために使用できます。

表 26: グローバル属性
属性 属性名 属性の説明
Cloud Type ibm_ctype クラウド・タイプの値は、publicdedicated、または local です。
Location ibm_location モニターされるリソースのロケーション。これは、リージョン、データ・センター、またはグローバルです。
Resource ibm_resource サービスによって測定されるリソース。通常は識別名または GUID です。
Resource Type ibm_resource_type サービスによって測定されるリソースのタイプ。
Resource group ibm_resource_group_name サービス・インスタンスが作成された場所であるリソース・グループ。
Scope ibm_scope スコープは、このメトリックと関連付けられた、アカウント、組織、またはスペースの GUID です。
Service name ibm_service_name このメトリックを生成するサービスの名前。

その他の属性

前述の表に記述されている 1 つ以上の属性のセグメント化のために、以下の属性を使用できます。 セグメンテーション・オプションの個々のメトリックを参照してください。

表 27: セグメンテーション・オプション
属性 属性名 属性の説明
Name of the namespace ibm_codeengine_namespace 名前空間の名前。 この固有 ID は、アプリケーションの URL に含まれています。 アプリケーションのデフォルト URL の形式は https://<appname>.<uuid>.<region>.codeengine.appdomain.cloud です。ここで、 appname はアプリケーションの名前、 uuid は自動生成された固有 ID、 region は Code Engine プロジェクトが存在する地域です。 URL の UUID 部分は、名前空間の名前です。
Service instance ibm_service_instance サービス・インスタンス・セグメントは、メトリックが関連付けられているインスタンスを示します。
HTTP status code ibm_codeengine_status HTTP 状況コード。
Application name ibm_codeengine_application_name アプリケーションの名前。
Application revision name ibm_codeengine_revision_name アプリケーション改訂の名前。
Gateway instance ibm_codeengine_gateway_instance ゲートウェイ・インスタンス。
Job Name ibm_codeengine_job_name ジョブ実行の作成に使用されるジョブの名前。
Jobrun condition ibm_codeengine_jobrun_condition ジョブの実行の条件。
Project name ibm_codeengine_project_name プロジェクトの名前。
Function name ibm_codeengine_function_name 呼び出された関数の名前。
Function pod name ibm_codeengine_function_podname 関数を起動したシステム・ポッドの名前。
Function type ibm_codeengine_function_type 関数が呼び出された方法のタイプ (sync または async)。