

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# での CloudWatch メトリクスの使用 AWS Batch
<a name="using_cloudwatch_metrics"></a>

AWS Batch は Amazon CloudWatch にジョブメトリクスを発行し、ジョブの状態遷移と期間をモニタリングします。 は、これらのメトリクスを追加料金なしで `AWS/Batch`名前空間に AWS Batch 発行します。

メトリクスは、ジョブの状態間の移行とジョブの試行が完了すると出力されます。状態遷移メトリクスは、特定の状態に入ったジョブの数を追跡し、期間メトリクスは、ジョブまたはジョブ試行が状態間の移動に費やした時間を追跡します。これらのメトリクスを使用して、CloudWatch ダッシュボードの構築、CloudWatch アラームの設定、ワークロードのパフォーマンスベースラインの確立を行います。詳細については、「Amazon [ CloudWatch ユーザーガイド」の「CloudWatch メトリクス](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html)[の使用」および「CloudWatch アラーム CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)の使用」を参照してください。 *Amazon CloudWatch *

[配列ジョブ](array_jobs.md) および のレポート動作は、単一ノードジョブ[マルチノード並列ジョブ](multi-node-parallel-jobs.md)とは異なります。次の表の **Reporting 動作**列では、これらのケースについて説明し、配列と MNP の動作について詳しく[配列ジョブとマルチノード並列ジョブのメトリクス](#cloudwatch_metrics_array_mnp)説明します。

**注記**  
AWS Batch は、ジョブキューに送信されたジョブに対してこれらのメトリクスを発行します。すべてのメトリクスは `JobQueueName`ディメンションで発行されます。このディメンションを使用して、ジョブが送信されたジョブキューでメトリクスデータをグループ化およびフィルタリングできます。

**重要**  
これらのメトリクスはベストエフォートベースで提供され、請求、監査、調整ではなく、モニタリングとオブザーバビリティを目的としています。ジョブの状態遷移はイベント駆動型であるため、メトリクスが失われることがあります。たとえば、ジョブの実行が開始され、ほぼすぐに成功または失敗した場合、ジョブが終了`RUNNING`状態になるまでに 状態への移行が観察されないことがあります。この場合、 AWS Batch はそのジョブの`RUNNING`移行に関連付けられたメトリクスを出力しません。時折のギャップを許容するようにアラームやダッシュボードを設計し、これらのメトリクスから派生した正確な数に依存しないようにします。

## AWS Batch CloudWatch メトリクス
<a name="cloudwatch_metrics_available"></a>

AWS Batch は次のジョブメトリクスを CloudWatch に送信します。状態遷移メトリクスは`Count`単位を使用し、期間メトリクスは`Milliseconds`単位を使用します。

次のメトリクスは、タイプに関係なく AWS Batch ジョブに適用されます。


| メトリクス | 説明 | 単位 | 報告動作 | 
| --- | --- | --- | --- | 
| `JobsSubmitted` | ジョブキューに送信されたジョブの数。 | カウント | ジョブが最初に送信されたときに発行されます ( `SUBMITTED`状態になります）。配列ジョブの場合、値は配列のサイズです。 | 
| `JobsMovedToPending` | `PENDING` 状態に移行したジョブの数。 | カウント | ジョブが に移動したときに出力されます`PENDING`。ジョブは通常、ジョブの依存関係を待機`PENDING`している間です。 | 
| `JobsMovedToRunnable` | `RUNNABLE` 状態に移行したジョブの数。 | カウント | ジョブが初回または再試行の結果として `RUNNABLE`に移動したときに発行されます。 | 
| `JobsMovedToStarting` | `STARTING` 状態に移行したジョブの数。 | カウント | ジョブが に移動したときに発行されます`STARTING`。 | 
| `JobsMovedToRunning` | `RUNNING` 状態に移行したジョブの数。 | カウント | ジョブが に移動したときに出力されます`RUNNING`。 | 
| `JobsMovedToSucceeded` | 正常に完了したジョブの数。 | カウント | ジョブが に移動したときに発行されます`SUCCEEDED`。 | 
| `JobsMovedToFailed` | `FAILED` 状態に移行したジョブの数。 | カウント | ジョブが `FAILED`状態になったときに発行されます。キャンセルまたは終了したジョブが含まれます。 | 
| `JobsCancelled` | キャンセルされたジョブの数。 | カウント | キャンセルリクエストの結果としてジョブが `FAILED`状態になったときに発行されます (ジョブの実行が開始される前）。 | 
| `JobsTerminated` | 終了したジョブの数。 | カウント | 終了リクエストの結果としてジョブが `FAILED`状態になったときに発行されます。 | 
| `JobsRetried` | 再試行されたジョブの試行回数。 | カウント | ジョブの試行が失敗し、ジョブが `RUNNABLE`に返されて再試行されると出力されます。 | 
| `JobSubmittedToRunnableDuration` | ジョブが から `SUBMITTED`になるまでにかかった時間`RUNNABLE`。 | ミリ秒 | ジョブが に入ると出力されます`RUNNABLE`。配列子ジョブの場合、親ジョブが送信された時点から子ジョブが になった時点までの時間を測定します`RUNNABLE`。 | 
| `JobAttemptStartingToRunningDuration` | ジョブの試行が実行を開始する前に で費`STARTING`やされた時間。 | ミリ秒 | ジョブが に入ると、試行ごとに出力されます`RUNNING`。再試行されたジョブは、 に達する試行ごとに 1 つのデータポイントを出力します`RUNNING`。 | 
| `JobAttemptExecutionDuration` | ジョブの試行が実行に費やされた時間。試行が開始されてから停止するまでに測定されます。 | ミリ秒 | ジョブの試行が完了したときに発行され、試行の実行が開始された時点から停止した時点まで測定されます。 | 
| `JobAttemptDuration` | ジョブの試行が継続した合計時間。開始してから試行が終了`STARTING`するまでに測定されます。 | ミリ秒 | 試行が終了したときに出力されます。この試行は、ジョブが終了状態 (`SUCCEEDED` または `FAILED`) に達したとき、または再試行`RUNNABLE`のために に戻ったときに終了します。 | 

次のメトリクスは、 AWS Batch コンピューティングジョブにのみ適用されます。


| メトリクス | 説明 | 単位 | 報告動作 | 
| --- | --- | --- | --- | 
| `JobSubmittedToFirstStartingDuration` | ジョブが から で初めて開始`SUBMITTED`されるまでにかかった時間`STARTING`。 | ミリ秒 | ジョブが最初に に入るときに、最初の試行時に出力されます`STARTING`。 | 
| `JobAttemptRunnableToStartingDuration` | ジョブの試行が開始`RUNNABLE`するまでに費やされた時間。 | ミリ秒 | ジョブが に入ると出力されます`STARTING`。 | 

以下のメトリクスは、 にのみ適用されます[のサービスジョブ AWS Batch](service-jobs.md)。


| メトリクス | 説明 | 単位 | 報告動作 | 
| --- | --- | --- | --- | 
| `JobsMovedToScheduled` | `SCHEDULED` 状態に移行したジョブの数。 | カウント | サービスジョブに対して、ジョブが最初に に移動したときに発行され`SCHEDULED`、プリエンプション`SCHEDULED`後にジョブが に移動するたびに再度発行されます。 | 
| `JobSubmittedToFirstScheduledDuration` | サービスジョブが から `SUBMITTED` で初めて になるまでにかかった時間`SCHEDULED`。 | ミリ秒 | サービスジョブが最初に に移動したときに出力されます`SCHEDULED`。 | 
| `JobAttemptRunnableToScheduledDuration` | ジョブの試行が に移行する`RUNNABLE`までに費やされた時間`SCHEDULED`。 | ミリ秒 | サービスジョブが に移動したときに試行ごとに出力されます。ジョブが に初めて移動したとき`SCHEDULED`と`SCHEDULED`、プリエンプション`SCHEDULED`後に に移動するたびに出力されます。 | 
| `JobAttemptScheduledToStartingDuration` | サービスジョブの試行が、最初の への移行から `SCHEDULED`への移行までにかかった時間`STARTING`。 | ミリ秒 | ジョブが から に移行したときにサービスジョブ`SCHEDULED`に対して発行されます`STARTING`。 | 
| `JobsPreempted` | プリエンプションされたジョブの数。 | カウント | ジョブが優先されるたびにクォータ管理ジョブに対して発行されます。 | 

## 配列ジョブとマルチノード並列ジョブのメトリクス
<a name="cloudwatch_metrics_array_mnp"></a>

AWS Batch は、1 つ以上の*子*ジョブを追跡する*親*ジョブ[マルチノード並列ジョブ](multi-node-parallel-jobs.md)として [配列ジョブ](array_jobs.md)および を表します。単一の論理ジョブが 2 回カウントされないように、 はジョブタイプに応じて、これら 2 つのレコードのうち 1 つのみからメトリクス AWS Batch を発行します。

配列ジョブ  
配列の親ジョブは、 を除いてメトリクスを出力しません`JobsSubmitted`。代わりに、各配列の子ジョブは、ジョブのライフサイクルを通じてこれらのメトリクスを個別に出力するため、メトリクス数は、送信された配列ジョブの数ではなく子ジョブの数を反映します。  
`JobsSubmitted` メトリクスは送信時に配列の親ジョブに対して 1 回発行され、その値は配列のサイズ (子ジョブの数) です。たとえば、1,000 人の子を持つ 1 つの配列ジョブを送信すると、 の値を持つ 1 つの`JobsSubmitted`データポイントが発行されます`1000`。  
など、送信からの時間を測定する期間メトリクス`JobSubmittedToRunnableDuration`は、配列の子ジョブごとに出力され、配列の親が送信された時点から、その子が問題の状態に達した時点まで測定されます。

マルチノード並列 (MNP) ジョブ  
MNP メトリクスは、ジョブ全体を表す MNP 親ジョブから出力されます。個々の MNP 子 (ノード) ジョブは、これらのメトリクスを出力しません。その結果、MNP ジョブは、使用するノードの数に関係なく 1 回カウントされます。

## AWS Batch CloudWatch メトリクスのディメンション
<a name="cloudwatch_metrics_dimensions"></a>

AWS Batch CloudWatch のジョブメトリクスは、単一のディメンション を使用します`JobQueueName`。すべてのメトリクスデータは、ジョブが送信されたジョブキューの名前でグループ化およびフィルタリングされます。

## View AWS Batch CloudWatch メトリクス
<a name="viewing-batch-cloudwatch-metrics"></a>

 AWS Batch ジョブメトリクスは、 AWS Batch コンソールまたは CloudWatch コンソールの名前`AWS/Batch`空間で表示できます。

**重要**  
コンソールにメトリクスを表示すると、標準の CloudWatch 料金が発生します。メトリクスの表示はいつでもオフにして、料金を停止できます。詳細については、「[Amazon CloudWatch 料金表](https://aws.amazon.com/cloudwatch/pricing/)」をご覧ください。

**バッチメトリクスダッシュボードでメトリクスを表示するには**

1. [AWS Batch コンソール](https://console.aws.amazon.com/batch)を開きます。

1. ナビゲーションペインで、**ダッシュボード**を選択し、**バッチメトリクス**タブを選択します。

1. **CloudWatch メトリクスの表示**を有効にします。

1. **メトリクスをフィルタリング** で、最大 5 **つのジョブキュー**とグラフ化する**メトリクス**を選択します。

1. **フィルターを適用** を選択します。コンソールには、メトリクスごとに 1 つのグラフが表示され、ジョブキューごとに 1 行が表示されます。

1. 最初は、**フィルターをクリア**を選択して選択内容を削除するか、**フィルターをリセット**してデフォルトを復元します。

1. (オプション) ジョブキューとメトリクスの組み合わせを再利用するには、保存されたフィルターセットを使用します。フィルターセットは AWS ユーザー設定に保存されるため、セッション間で保持され、最大 5 つ節約できます。**保存済みフィルターセット**ドロップダウンと**フィルターのクリア**ボタンの矢印メニューからそれらを管理し、次のいずれかを選択します。
   + **保存** - ジョブキューとメトリクスを選択し、**新しいフィルターセットとして保存**を選択します。一意の名前を入力し、オプションでデフォルトとしてマークします。
   + **適用** - **保存済みフィルターセット**ドロップダウンからセットを選択し、**フィルターを適用**を選択します。
   + **更新** - セットを選択した状態で、選択を変更し、**現在のフィルターセットの更新**を選択します。
   + **デフォルトとして設定** - セットを選択した状態で、**設定**を選択し、**デフォルトとして設定**を選択します。タブを開くと、デフォルトのセットが自動的にロードされます。
   + **削除** - セットを選択し、**現在のフィルターセットの削除**を選択します。

**1 つのジョブキューのメトリクスを表示するには**

1. ナビゲーションペインで、**ジョブキュー**を選択し、ジョブキューを選択します。

1. **[モニタリング]** タブを選択します。

1. **CloudWatch メトリクスの表示**を有効にします。

1. **状態遷移メトリクス**、**ライフサイクルイベントメトリクス**、**期間メトリクス**セクションで、各メトリクスセレクタを使用してグラフ化するメトリクスを選択します。

表示されるメトリクスは、このジョブキューに限定されます。選択内容はジョブキューごとに保存され、セッション間で保持されます。

ダッシュボードの構築やアラームの設定など、CloudWatch でこれらのメトリクスを直接操作するには、[CloudWatch コンソール](https://console.aws.amazon.com/cloudwatch)を開き、`AWS/Batch`名前空間を選択します。