Amazon CodeGuru

ML を活用した推奨事項を使用して、コードレビューを自動化し、アプリケーションのパフォーマンスを最適化

最もコストがかかるコード行を見つけて、コードの品質を向上する

Amazon CodeGuru はインテリジェントな推奨事項を提供するデベロッパーツールで、コードの品質を向上し、アプリケーションの最もコストがかかっているコード行を特定するのに役立ちます。CodeGuru を既存のソフトウェア開発ワークフローに統合すれば、アプリケーション開発中のコードレビューを自動化したり、本番環境でのアプリケーションパフォーマンスを継続的に監視したり、コード品質とアプリケーションパフォーマンスを改善するための推奨事項と視覚的な手がかりを提供したりして、全体的なコストを削減します。

CodeGuru Reviewer は機械学習を使用して、アプリケーション開発中に重大な問題、セキュリティの脆弱性、見つけにくいバグを特定することで、コードの品質を向上します。 詳細 »

CodeGuru Profiler は最も費用がかかっているコード行を特定します。デベロッパーは、アプリケーションの実行時の動作を理解し、コードの非効率性を特定して除去し、パフォーマンスを向上させ、計算コストを大幅に削減することができます。 詳細 »

Amazon CodeGuru の紹介 (2:20)

機能の説明

CodeGuru Reviewer と Profiler を開発パイプラインに統合して、コードの品質を向上させ、アプリケーションのパフォーマンスを最適化します
Amazon CodeGuru の説明

Amazon CodeGuru Reviewer

CodeGuru Reviewer は、Java および Python (プレビューで利用可能) コードの問題を検出し、それらを修正するための推奨事項を提供します。数十年にわたる知識と経験でトレーニングされた CodeGuru Reviewer は、機械学習、AWSとセキュリティのベストプラクティス、および何千ものオープンソースと Amazon リポジトリに対する何百万ものコードレビュー通して苦労して取得したレッスンを使用します。

コードのレビューを開始するには、GitHub、GitHub Enterprise、Bitbucket、または AWS CodeCommit の既存のコードリポジトリを CodeGuru に関連付けます。

利点

本番環境で発生する前にコードの問題をキャッチする

コードレビューの場合、デベロッパーは GitHub、GitHub Enterprise、Bitbucket Cloud、AWS CodeCommit などにコードをコミットし、CodeGuru Reviewer をコードレビューワーの 1 つとして追加します。通常の開発プロセスに、他の変更を行う必要はありません。CodeGuru Reviewer は、リポジトリ内の既存のコードベースを分析し、見つけにくいバグや重大な問題を高い精度で特定し、それらを修正する方法に関するインテリジェントな提案を提供して、連続するコードレビューのベースラインを作成します。

セキュリティ脆弱性の修正

 
CodeGuru Reviewer Security Detector は、機械学習と AWS の長年のセキュリティの経験を活用して、コードのセキュリティを向上させます。 OWASP カテゴリのトップ 10 のセキュリティ脆弱性を特定し、 コードが KMS、EC2 API、一般的な Java 暗号化および TLS/SSL ライブラリのベストプラクティスに準拠する助けになります。セキュリティディテクタが問題を特定すると、コードの改善を提案する理由の説明とともに修復の推奨事項を提供します。これにより、セキュリティエンジニアはアーキテクチャやアプリケーション固有のセキュリティのベストプラクティスに注力できます。

継続的な監視により、コードの品質を積極的に改善する

開始されたプルリクエストごとに、CodeGuru Reviewer は自動的に増分コードの変更を分析し、プルリクエストに直接推奨事項を投稿します。さらに、定期的なコード保守のための完全なリポジトリまたはコードベーススキャン、およびコード品質の一貫性を確保するためのコードデューデリジェンスのイニシアチブをサポートします。

Amazon CodeGuru Profiler

CodeGuru Profiler は、実稼働しているアプリケーションのパフォーマンスを最適化、および最もコストが高いコード行を特定します。アプリケーションのパフォーマンスの最適化を常に模索しており、CPU 使用率を削減し、計算コストを低減し、アプリケーションのパフォーマンスを向上させるための修正方法を推奨します。

Amazon EC2、Amazon ECS、AWS Fargate、Amazon EKS、AWS Lambda、またはオンプレミスで実行中のあらゆるアプリケーションのパフォーマンスを最適化できます。

利点

パフォーマンスの問題をトラブルシューティング

CodeGuru Profiler は、アプリケーションのランタイムデータを分析して、CPU とメモリの使用率を改善し、パフォーマンスの問題をトラブルシューティングして、レイテンシーとスループットを改善します。CPU 使用率のオーバーヘッドを最小限に抑えながら、本番環境で継続的に実行されます。ヒープサマリーを使い、メモリを使い果たしている部分までたどることができます。

アプリケーションパフォーマンスの異常と一般的な問題を特定する

CodeGuru Profiler は CPU の大量消費の開始、またはレイテンシーの増加を示すアプリケーションスタックから重要なメソッドにおけるパフォーマンスの異常を自動的に検出します。このような早期検出と通知により、本番環境での問題が深刻化していくことを防止します。そのため、サービスの可用性やカスタマーエクスペリエンスに影響を与える前に、デベロッパーは問題を修正するための十分な時間が得られます。

最もコストがかかるコード行を今すぐ見つける

 
コードとアプリケーションが効率的であるほど、実行にかかるコストは低減します。CodeGuru Profiler は、パフォーマンス問題の修正方法に関する視覚化と推奨事項を提供し、本番環境で実行されているアプリケーションの運用コストを最大 50% 削減するサポートを行います。また、非効率的なコードを実行するための推定コストも表示されるため、デベロッパーは修復に優先順位を付けることができます。

CodeGuru の詳細については、Amazon CodeGuru デベロッパーのフォーラムにアクセスしてください。

お客様の導入事例

Atlassian

「17 万企業を超えるチームは、作業の整理、議論、完了を支援する Atlassian 製品を使って、チームワークが容易になりました。Atlassian では、多くのサービスでデプロイごとに数百のチェックインがあります。開発チームによるコードレビューはバグが本番環境に到達するのを防ぐのに非常に役立ちます。しかし、特に 1 日に複数のデプロイがある場合、システムがストレス下でどのように動作するかを予測したり、複雑なデータ形状を管理したりできるとは限りません。」

Atlassian、技術チーム、エンジニアリング部長、Zak Islam 氏

Atlassian が CodeGuru Profiler を使用してどのように本番環境でサービスをプロファイリングしているかご覧ください

 

EagleDream

「アプリケーション開発とは、パフォーマンスの高いシステムを作成すること、そして既存のシステムのフィードバックおよび継続的な改善です。こうした作業は、アーキテクチャの強力な土台作りで始まり、多くの場合、アプリケーションコードの詳細で終わります。当社 EagleDream のチームがこれらの詳細について分析する際、自由に使えるツールはいろいろとあります。静的および動的の両面から分析することは役に立ちます。Amazon CodeGuru Profiler が提供するランタイム分析は実行が最も簡単かつ最速でできる分析の 1 つで、修正が簡単なアプリケーションコードに関するインサイトを得ることができるとわかりました。このツールを使用することで、他の方法では見つけるのが難しかった、アプリケーションの障害を示す部分をすばやく特定できるようになり、極めて高速なフィードバックループで実装およびテストできる変更を開発しました。この結果、当社独自のワークロードとお客様のワークロードを継続的に提供および改善して、パフォーマンスの向上が見込めるだけでなく、コストも削減できます。」

EagleDream、プリンシパルクラウドソリューションアーキテクト、Dustin Potter 氏

EagleDream が CodeGuru Profiler によってどのようにアプリケーションを最適化しているかご覧ください

DevFactory

「DevFactory は、100 を超えるエンタープライズ向けソフトウェア製品の 6 億行を超えるコードを管理しています。今後、当社製品をすべてクラウドネイティブ製品にし、AWS で利用できる素晴らしい一連のマネージドサービスを活用することを計画しています。古いオンプレミスアーキテクチャを再構築し、それらをクラウドに移行することで、あらゆる最新のサービスに遅れないようにしたり、これらのアーキテクチャに関連するパラダイムシフトに適応したりするなどのエンジニアリング上の一連の課題が発生します。Amazon CodeGuru は製品のパフォーマンスを最適化しながら、あらゆるベストプラクティスを実施してこれらのサービスを確実に活用できるという点において、とても価値のあるツールです。Amazon CodeGuru Reviewer といったツールがなければ、FogBugz のような製品全体を AWS のクラウドネイティブに書き換えることはできなかったでしょう。現在、Amazon CodeGuru Profiler を使って、EngineYard のコンテナベースの「No Ops」プラットフォームや Jive とコラボレーションした次世代プラットフォームなど、多くの製品を最適化しています。」

DevFactory、最高経営責任者、Rahul Subramaniam 氏

DevFactory が CodeGuru によってどのようにより優れたアプリケーションを構築しているかご覧ください

Amazon DevOps Guru

Amazon DevOps Guru

DevOps Guru は、デベロッパーとオペレーター向けにアプリケーションの運用パフォーマンスと可用性を測定および改善するためのより簡単な方法を提供します。

Product-Page_Standard-Icons_01_Product-Features_SqInk
Amazon CodeGuru の機能を確認する

特徴のページにアクセスする

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

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

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

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

サインイン