AWS has recently made its Amazon CodeGuru service publicly available. This service allows developers to automatically check their code for bugs and improve it with provided fixes.
The Amazon CodeGuru service, in beta since the Amazon re:Invent at the end of 2019, it uses machine learning to support developers to check their code for possible bugs in an efficient way. Developers who have to deal with millions of lines of code benefit from this the most, as errors in code can be costly. At this moment CodeGuru only supports Java, other languages may follow in the future.
The Amazon CodeGuru service consists of two tools: CodeGuru Reviewer and CodeGuru Profiler. Before they can use these two tools, they first need to add the code they want to examine to a hosting repository like GitHub, Bitbucket Cloud, or AWS CodeCommit. CodeGuru Reviewer will then start analyzing the code and will search for bugs.
The tool provides different solutions for the identified bugs. All of this work is done in the hosting repository itself. For example, when using GitHub, CodeGuru Reviewer itself makes a pull request, adds a comment with specific data about the bug, and recommends potential solutions.
The tool’s algorithm has been trained on more than 10.000 open-source projects on GitHub. This algorithm can be further improved in the future with feedback from developers.
The CodeGuru Profiler tool helps with automating the code. The tool helps developers to find flaws in their code. In addition, the tool can also provide an estimated value in dollars for all non-optimized code lines found. The tool is supported on serverless platforms such as AWS Lambda and AWS Fargate.
Amazon CodeGuru is immediately available in the regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (London), EU (Frankfurt), EU (Stockholm), Asia-Pacific (Singapore), Asia-Pacific (Sydney) and Asia-Pacific (Tokyo). In the coming months, the service will also be rolled out in the other AWS cloud regions.