Amazon CodeGuru はインテリジェントな推奨事項を提供するデベロッパーツールで、コードの品質を向上し、アプリケーションの最もコストがかかっているコード行を特定するのに役立ちます。Amazon CodeGuru は、デベロッパーが 2 つのコンポーネントを使用してコードレビューとアプリケーションプロファイリングを自動化するための支援をします。

  • Amazon CodeGuru Reviewer は、機械学習を使用してコード内の一般的な問題にフラグを付け、修正に関する具体的な推奨事項を提供します)。
  • Amazon CodeGuru Profiler は、機械学習を使用して、アプリケーションの最もコストがかかっているコードを特定します。

関連するサービスは AWS BugBust です。これは、組織で Amazon CodeGuru を使用して、デベロッパーが 100 万のソフトウェアバグと 1 億 USD の技術的負債をまとめて排除するための最初のグローバルなバグバスティングチャレンジです。

このページには、Amazon CodeGuru ReviewerAmazon CodeGuru Profiler、および AWS BugBust の価格情報が含まれています。3 つのサービスのいずれも、初期費用や長期契約または確約の必要はありません。

Amazon CodeGuru Reviewer

Amazon CodeGuru Reviewer の場合、固定月額料金を支払います。月額料金は、オンボーディングされたすべてのリポジトリのコードの合計行数によって決定され、リポジトリサイズに基づいて料金階層を使用して計算されます。複数のコードブランチを持つコードリポジトリがある場合は、最大のコードブランチに対して課金されます。コメントや空行などのリポジトリ内の非コード行はカウントされません。

無料利用枠

Amazon CodeGuru Reviewer は無料で使用を開始できます。無料利用枠は、AWS アカウントごとにオンボーディングされたリポジトリの最大 10 万行のコードまで 90 日間継続されます。90 日間の無料利用枠の有効期限が経過した場合、またはリポジトリサイズが 10 万行のコードを超えた場合は、以下のリポジトリサイズに基づいて標準の料金をお支払いいただきます。

標準料金

リポジトリで CodeGuru Reviewer を有効にすると、1) 増分コードレビュー分析 (例: プル、プッシュ、またはマージリクエスト) を実行してコードの変更を分析するか、2) フルリポジトリスキャンを実行してリポジトリ全体に関する推奨事項を取得できます。標準月額料金には、オンボーディングされたリポジトリのすべての増分コードレビュー分析が含まれています。月額料金には、オンボーディングされたリポジトリごとに、月に最大 2 回のフルリポジトリスキャンも含まれます。追加のフルリポジトリスキャンについては、10 万行のコードあたり 10 USD が請求されます。

すべての増分コードレビュー分析とフルリポジトリスキャンには、CodeGuru Reviewer で利用可能なすべてのセキュリティ機能が含まれています。(詳細については、ドキュメントをご参照ください)

CodeGuru Reviewer の料金の例

  • 料金の例 1 – 無料利用枠の説明

    90,000 行のコードを含む単一のコードリポジトリのシナリオを考えてみます。デベロッパーは毎月 100 の増分コードレビューを送信し、2 回のフルリポジトリスキャンをトリガーします

    リポジトリサイズ コードの最初の 10 万行の料金 コードの追加の 10 万行の料金 月額料金

    90k

    0 USD (最初の 90 日間)

    10 USD (90 日間の無料利用枠終了後)

    該当なし 

    0 USD (最初の 90 日間)

    10 USD (90 日間の無料利用枠終了後)

  • 次の例では、無料利用枠外のシナリオを検討します。

    料金の例 2

    無料利用枠の有効期限が切れた場合のシナリオを考えてみます。450,000 行のコードを含む単一のコードリポジトリがあります。デベロッパーは毎月 300 の増分コードレビューを送信し、2 回のフルリポジトリスキャンをトリガーします。このシナリオでは、固定月額料金は 40 万行のコードに切り上げられ、400,000 のコードリポジトリがあるものとして課金されます。

    リポジトリサイズ コードの最初の 10 万行の料金 コードの追加の 10 万行の料金 月額料金

    450K

    10 USD

    30 USD * 4 (350K から丸められた数値としての 400K/ 100K) = 120 USD

    10 USD + 120 USD = 130 USD

  • 料金の例 3

    複数のリポジトリでコード分析を実行することもできます。この例では、3 つのコードリポジトリがあり、それぞれに 300,000 行のコードが含まれています。デベロッパーは、各コードリポジトリで、毎月 200 の増分コードレビューを送信し、2 回のフルリポジトリスキャンをトリガーします。

    リポジトリサイズ コードの最初の 10 万行の料金 コードの追加の 10 万行の料金 月額料金

    3*300K = 900K

    10 USD

    30 USD * 8 (800K/ 100K) = 240 USD

    10 USD + 240 USD = 250 USD

  • 料金の例 4

    複数のコードブランチを含むリポジトリがある場合があります。コード分析またはブランチの一部もしくは全部を実行でき、最大のコードブランチに対してのみ課金されます。この例では、3 つのブランチを含む単一のコードリポジトリがあります。メインブランチには 400,000 行のコードが含まれ、他の 2 つのブランチにはそれぞれ 300,000 行のコードが含まれています。デベロッパーは、毎月、3 つすべてのブランチにおいて、300 の増分コードレビューを送信し、1 回のレビューあたりの平均コード行数は 1000 です。 

    リポジトリサイズ コードの最初の 10 万行の料金 コードの追加の 10 万行の料金 月額料金

    Max (400K, 300K, 300K)= 400K

    10 USD

    30 USD * 3 (300K/ 100K)= 90 USD

    10 USD + 90 USD = 100 USD

  • 料金の例 5

    この例では、リポジトリごとに 1 か月に 2 回を超えるフルリポジトリスキャンが月額費用に与える影響を示します。3 つのコードリポジトリがあり、それぞれに 300,000 行のコードが含まれています。デベロッパーは、各コードリポジトリで、毎月 200 の増分コードレビューを送信します。これらは、最初のリポジトリについて 3 回のフルリポジトリスキャンをトリガーし、他の 2 つのリポジトリについてそれぞれ 2 回のフルリポジトリスキャンをトリガーします。

    リポジトリサイズ 最初の 100K 行のコード コードの追加の 10 万行 月額料金

    3*300K = 900K

    10 USD

    30 USD * 8 (800K/ 100K) = 240 USD

    10 USD + 240 USD = 250 USD

    リポジトリ リポジトリサイズ フルリポジトリスキャン 上限 (リポジトリごと) 上限超過料金
    最初 300k 3 2 (3-2) * 10 USD *(300K/100K) = 30 USD
    2 回目 300k 2 2 0 USD
    3 回目 300k 2 2 0 USD

    合計月額料金 = 250 USD + 30 USD = 280 USD

Amazon CodeGuru Profiler

Amazon CodeGuru Profiler を有効にしてアプリケーションをプロファイリングすると、アプリケーションランタイムの CPU 使用率とレイテンシー特性がサンプリングされ、アプリケーションプロファイルが作成されます。Amazon EC2 インスタンス、Amazon ECS、Amazon EKS、AWS Fargate または AWS Lambda で実行されているアプリケーションの各プロファイルには、CodeGuru Profiler が実行するサンプリング時間数に基づいて設定された料金が発生します。1 サンプリング時間は、1 つのインスタンスもしくはコンテナーで CodeGuru Profiler エージェントを 1 時間実行するのに相当します。つまり、1 つのアプリケーションが 2 つのインスタンスもしくはコンテナでそれぞれ 1 時間実行され、エージェントがこれらの 2 つのインスタンスで実行されている場合には、2 サンプリング時間として集計されます。

無料利用枠

Amazon CodeGuru Profiler は無料で使用を開始できます。  無料利用枠は 90 日間有効です。90 日間の無料利用枠の有効期限が経過すると、以下のサンプリング時間数に基づいた標準料金をお支払いいただきます。 

標準料金

Amazon EC2 インスタンス、Amazon ECS、EKS、AWS Fargate Containers 上のアプリケーションのプロファイリング プロファイリンググループごとに最初の 36,000 サンプリング時間まで、1 サンプリング時間あたり 0.005 USD/月。プロファイリンググループごとに 1 か月あたり 36,000 サンプリング時間を超える分については、追加料金は発生しません。 
AWS Lambda でのアプリケーションプロファイリング 支払いアカウントごとに、最初の 500 サンプリング時間は無料です。その後、プロファイリンググループごとに最初の 36,000 サンプリング時間まで、1 サンプリング時間あたり 0.005 USD/月。プロファイリンググループごとに 1 か月あたり 36,000 サンプリング時間を超える分については、追加料金は発生しません。 

CodeGuru Profiler の料金の例

  • 料金の例 1

    CodeGuru Profiler を使用して、50 個の EC2 インスタンスで実行されている 1 つのアプリケーションのプロファイルを作成するシナリオを考えます。この場合、プロファイリンググループは単一のアプリケーションで構成されます。 

    アプリケーションの数 EC2 インスタンスの数 サンプリング時間 サンプリング時間/アプリケーション 月額料金

    1

    50

    1 アプリケーション * 50 インスタンス * 1 日あたり 24 時間 * 1 か月あたり 30 日 = 36,000 サンプリング時間

    0.005 USD/時間

    36,000 * 0.005 USD = 180 USD
  • 料金の例 2

    CodeGuru Profiler を使用して、EC2 インスタンスで実行する 10 個のアプリケーションのプロファイルを作成するシナリオを考えます。アプリケーションは、それぞれ異なるプロファイルグループとして、15 個の EC2 インスタンスを持っています。

    アプリケーションの数 EC2 インスタンスの数 サンプリング時間/アプリケーション サンプリング時間あたりの料金 月額料金

    10

    15

    1 アプリケーション * 15 インスタンス * 1 日あたり 24 時間 * 1 か月あたり 30 日 = 10,800 サンプリング時間

    0.005 USD/時間

    10,800 * 0.005 USD * 10 アプリケーション = 540 USD
  • 料金の例 3

    CodeGuru Profiler を使用して、70 個の ECS コンテナで実行されている単一のアプリケーションのプロファイルを作成するシナリオを考えます。

    アプリケーションの数 EC2 インスタンスの数 サンプリング時間/アプリケーション サンプリング時間あたりの料金 月額料金

    10

    70

    1 アプリケーション * 70 インスタンス * 1 日あたり 24 時間 * 1 か月あたり 30 日 = 50,400 サンプリング時間

    0.005 USD/時間

    36,000 * 0.005 USD = 180 USD
  • 料金の例 4

    CodeGuru Profiler により AWS Lambda 関数のプロファイリングを行うシナリオを考えます。この関数は、一度の呼び出しの度に 5 秒間実行し、呼び出しは毎月 100 万回あるとします。

    支払いアカウントごとに最初の 500 サンプリング時間までは無料なので、この例において、この請求期間中での CodeGuru Profiler の使用について、888.89 サンプリング時間が 1 時間あたり 0.005 USD の単位料金でアカウントに請求されます。 

    サンプリング時間数 サンプリング時間あたりの料金 月額料金

    (5 秒 × 1,000,000 呼び出し) / 3,600 秒 = 1,388.89 サンプリング時間

    0.005 USD/時間

    (1,388.89 時間 - 500 時間) * 0.005 USD = 4.44 USD
  • 料金の例 5

    同じプロファイリンググループ内にある 2 つの AWS Lambda 関数のプロファイリングを、CodeGuru Profiler で行うシナリオを考えます。1 つめの Lambda 関数は、一度の呼び出しで 3 秒間実行し、毎月 1000 万回呼び出されるとします。2 つ目の Lambda 関数では、一度の呼び出しでの実行時間は 6 秒間とし、毎月 2,000 万回呼び出されるとします。

    この例では、これがアカウント内の AWS Lambda に関するプロファイリングのすべてとします。アカウントの最初の 500 サンプリング時間は無料で、プロファイリンググループごとに 36,000 時間を超える分には課金されません。 

     

    サンプリング時間数 サンプリング時間あたりの料金 月額料金

    (3 秒 × 10,000,000 呼び出し + 6 秒 × 20,000,000 呼び出し) / 3,600 秒 = 41,666.67 サンプリング時間

    0.005 USD/時間

    (36,000-500)*0.005 = 177.50 USD

AWS BugBust

AWS BugBust の使用を無料で開始できます。初期費用や長期契約または確約の必要はありません。

30 日間の無料利用枠

最初の AWS BugBust イベントを作成するとき、Amazon CodeGuru Reviewer と Amazon CodeGuru Profiler の基本的な使用によって発生するすべてのコストは、AWS アカウントごとに 30 日間無料です。この 30 日間の無料期間は、Amazon CodeGuru Reviewer と Amazon CodeGuru Profiler の無料利用枠を既に利用している場合でも適用されます。30 日間の無料利用枠機関中に、複数の AWS BugBust イベントを作成することができます。30 日間の無料利用枠の期限が切れた後は、チャレンジにおける利用に基づき、Amazon CodeGuru Reviewer と Amazon CodeGuru Profiler に対して課金されます。料金は、このページに示す個々のサービス料金モデルに基づいて計算されます。

CodeGuru Profiler の料金の例

  • 料金の例 1

    最初の BugBust イベントを作成した場合のシナリオを考えてみましょう。BugBust イベントを作成するには、20 万行のコード (CodeGuru Reviewer を使用して分析) を含むリポジトリからバグをインポートし、10 個のプロファイリンググループ (CodeGuru Profiler を使用して作成) を追加しました。

    AWS アカウントごとに最初の 30 日間は無料であるため、月額料金は 0 USD になります。BugBust チャレンジは 30 日間、無料で実行できます。

    リポジトリサイズ プロファイリンググループ 月額料金

    20 万行のコード

    10

    0 USD (CodeGuru の新規および既存の顧客)
  • 料金の例 2

    最初のイベントを作成してから 30 日以内に開始および終了する 2 番目の BugBust イベントを作成したシナリオを考えてみます。BugBust イベントを作成するには、50 万行のコード (CodeGuru Reviewer を使用して分析) からバグをインポートし、15 個のプロファイリンググループ (CodeGuru Profiler を使用して作成) を追加しました。AWS アカウントごとに最初の 30 日間は無料であるため、好きなだけ多くのイベントを実行できて、月額料金は 0 USD になります。最初の 30 日間以内にイベントを完了する必要があります。

    リポジトリサイズ プロファイリンググループ 月額料金

    50 万行のコード

    15

    0 USD
  • 料金の例 3

    最初のイベントを作成してから 35 日後に BugBust イベントを作成したシナリオを考えてみます。AWS BugBust の無料利用枠の範囲外です。ただし、これまでに Amazon Code Guru Reviewer または Amazon CodeGuru Profiler を使用したことがないため、これらのサービスに対して 90 日間の無料利用枠料金の対象です。BugBust イベントを作成するには、20 万行のコード (CodeGuru Reviewer を使用して分析) からバグをインポートし、10 個のプロファイリンググループ (CodeGuru Profiler を使用して作成) を追加しました。

    リポジトリサイズ プロファイリンググループ 月額料金

    20 万行のコード

    10

    20 万行のコードリポジトリに対する CodeGuru Reviewer の料金: 0 USD (最初の 10 万行のコードに対して) + 30 USD (次の 10 万行のコードに対して) = 30 USD

    10 を実行している CodeGuru Profiler の料金
    プロファイリンググループ: 0 USD

    合計料金 = 30 USD + 0 USD = 30 USD

  • 料金の例 4

    最初のイベントを作成してから 35 日後に BugBust イベントを作成したシナリオを考えてみます。つまり、AWS BugBust の無料利用枠は終了している場合です。Amazon CodeGuru Reviewer と Amazon CodeGuru Profiler の無料利用枠は既に利用しています。BugBust イベントを作成するには、20 万行のコード (CodeGuru Reviewer を使用して分析) からバグをインポートし、それぞれで 1 インスタンスをモニタリングする 10 個のプロファイリンググループ (CodeGuru Profiler を使用して作成) を追加しました。

    リポジトリサイズ プロファイリンググループ 月額料金

    20 万行のコード

    10

    20 万行のコードリポジトリに対する CodeGuru Reviewer の料金: 10 USD(最初の 10 万行のコードに対して) + 30 USD (次の 10 万行のコードに対して) = 40 USD

    10 個のプロファイリンググループを実行している CodeGuru Profiler の料金: 0.005 USD*10 個のプロファイリンググループ*1 インスタンス*1 日 24 時間*1 か月 30 日間= 36 USD

    合計料金 = 40 USD + 36 USD + 76 USD

料金に関するその他のリソース

AWS 料金計算ツール

AWS の月額料金を簡単に計算

エコノミクスリソースセンター

AWS に切り替えるためのその他のリソース

Standard Product Icons (Features) Squid Ink
よくある質問で詳細を確認する

Amazon CodeGuru のよくある質問ページをご覧ください。

詳細はこちら 
Sign up for a free account
無料のアカウントにサインアップ

AWS 無料利用枠にすぐにアクセスできます。 

サインアップ 
Standard Product Icons (Start Building) Squid Ink
コンソールで構築を開始する

AWS マネジメントコンソールで Amazon CodeGuru の構築を始めましょう。

サインイン