跳至主要内容

Amazon CodeGuru 文档

通过 Amazon CodeGuru 查找最昂贵的代码行

Amazon CodeGuru 是一款开发工具,可使用机器学习功能来帮助您提高代码可维护性并查找最昂贵的代码行。它可以执行代码审查并提供有关提升应用程序性能的建议。

Amazon CodeGuru Reviewer

 

Amazon CodeGuru Reviewer 可帮助您发现 Java 和 Python 代码中的问题,并制定修复问题时可以考虑的建议。要开始审查代码,您可以将现有代码库与 CodeGuru 关联起来。

自动对拉取请求提出建议:CodeGuru Reviewer 可以通过分析源代码拉取请求发现关键问题,确定代码可维护性问题和安全风险。然后,它会提供建议,帮助您直接解决拉取请求中的代码缺陷。CodeGuru Reviewer 可发现下列类别的代码可维护性问题,并有助于开发团队具备相应能力,在软件开发过程中维持较高编码标准。

安全检测:CodeGuru Reviewer 可帮助您提高代码安全性,并提供关于最佳实践的建议。它利用自动推理分析从源到接收器的数据流以及跨多个函数的数据流,以检测难以发现的安全漏洞。该安全检测器支持 Java,最前可支持到 Java 11,并可发现多种类别的问题。

您可以转至 CodeGuru 控制台并通过上传您的源和构建构件来触发对整个存储库或代码库的安全分析。您可以在“代码审查”控制台页面(Reviewer 部分)中查看代码审查。此页面列出了代码审查信息,例如代码审查状态、存储库和建议数量等。您可以点击成功完成的代码审查以查看建议详情,搜索建议并查看已经分析的行数。您也可以就 CodeGuru 的建议提供反馈。

完整存储库分析:通过 CodeGuru,您可以针对关联存储库中的代码行(而不仅仅是通过拉取请求获得的增量更改)获得机器学习支持的代码审查建议。您可以运行存储库扫描,以便在代码迁移、代码尽职调查和定期代码可维护性计划中获得代码审查建议。在 CodeGuru 控制台中,您可以触发对完整存储库的新分析。 

借助拉取请求和完整存储库分析,搭载 CodeGuru Reviewer 可帮助您:1) 关联存储库;2) 启动完整存储库分析;3) 为增量代码更改分析拉取请求;以及 4) 对存储库执行定期重新扫描以帮助确保代码可维护性。

CI/CD 集成:CodeGuru Reviewer 可集成到您的 CI/CD 管道中,而不必离开您的源代码管理或 CI/CD 工具。您可以将其配置为运行并对管道的拉取、推送或计划运行提供建议。通过 CI/CD 触发 CodeGuru Reviewer 扫描后,您可以在 CodeGuru Reviewer 控制台内或 CI/CD 提供商的用户界面内查看代码质量或安全性建议。

通过 GitHub Action 进行安全审查:您可以使用 CodeGuru Reviewer 的 GitHub Action 直接在 GitHub 用户界面内运行安全审查和接收建议。 

建议还会提供在拉取请求和 AWS 管理控制台内。如果您点击 GitHub 中的建议,可以获得更多关于调查发现的深入信息。

 

Amazon CodeGuru Profiler

Amazon CodeGuru Profiler 探求应用程序性能优化,帮助确定最“昂贵”的代码行,并提供修复方法建议,以降低 CPU 使用率、减少计算成本和提高应用程序性能。 

在生产中随时分析应用程序:CodeGuru Profiler 旨在以较低的开销在生产环境中运行。这样,您就可以使用真实的客户流量模式来分析应用程序并对其进行问题排查,还可以发现性能问题。借助于性能分析数据和机器学习支持的建议,您可以为生产中的应用程序找出并修复性能问题。CodeGuru Profiler 还可提供堆摘要,帮助您确定在任何指定时间哪些对象正在耗尽您的内存。

了解应用程序的运行时行为:CodeGuru Profiler 可分析应用程序的 CPU 使用率、堆使用情况和延迟特性,以显示您在应用程序中花费最多周期或时间的部分。CPU 和延迟分析的呈现方式旨在帮助您了解哪些代码路径消耗的资源最多,验证您的应用程序是否按预期执行,并找出可以进一步优化的方面。

堆摘要:堆使用情况分析以堆摘要可视化形式呈现,以显示堆上分配了哪些对象。

智能建议:CodeGuru Profiler 可发现应用程序中的性能问题,并提供基于机器学习的建议,供您在修复这些问题时考虑。这些建议可帮助您确定和优化代码中最昂贵或资源密集型的方法。这些优化可帮助您降低基础设施的成本,减少延迟,并改善最终用户的整体体验。

异常检测:Amazon CodeGuru Profiler 可实时分析您的应用程序配置文件,并帮助检测应用程序及其方法中的行为异常。CodeGuru Profiler 控制台的“建议”报告会跟踪异常,您可以看到该方法的延迟随时间变化的时序,且异常将突出显示。如果您已配置 Amazon SNS 通知,则在检测到新异常时将给您发送通知。

其他信息

有关服务控制、安全特征和功能的更多信息,包括有关存储、检索、修改、限制和删除数据的信息(如适用),请参阅 https://docs.aws.amazon.com/index.html。对于 http://aws.amazon.com/agreement 上的《AWS 客户协议》或者您与 AWS 之间签订的用于管理您使用 AWS 服务的其他协议而言,这些其他信息并不构成此文档的一部分。