本综合指南介绍 GitHub Copilot 应用现代化中的高级评估功能,可帮助你最大程度地提高应用程序现代化评估过程的价值。
应用程序评估是现代化过程中的关键第一步。 本文介绍完整的评估工作流,可帮助你有效地处理评估报告、为不同方案配置评估,以及在整个现代化过程中管理评估数据。
在运行评估之前进行配置
在运行评估之前,请在 GitHub Copilot 应用现代化评估窗格中选择“ 配置评估 ”来配置 评估 。
配置属性
目前,可以配置评估的target、capabilityos属性和mode属性。
默认情况下,评估以 Azure Kubernetes 服务(AKS)、Azure 应用服务和 Azure 容器应用(ACA)作为服务目标运行。
target:要运行应用的 Azure 计算服务。 如果尚未确定要使用哪个目标,请选择多个目标。 然后,可以比较评估报告的目标。价值 Description azure-aks部署应用到 Azure Kubernetes 服务的最佳做法。 azure-appservice部署应用到 Azure 应用程序服务的最佳做法。 azure-container-apps部署应用到 Azure 容器应用的最佳做法。 capability:实现应用现代化的目标技术。价值 Description containerization容器化应用程序的最佳做法。 openjdk11迁移到 OpenJDK 11 的最佳做法。 openjdk17迁移到 OpenJDK 17 的最佳做法。 openjdk21迁移到 OpenJDK 21 的最佳做法。 os:要运行应用的目标作系统。价值 Description linux将应用程序迁移到 Linux 平台的最佳做法。 windows将应用程序迁移到 Windows 平台的最佳做法。 mode:分析模式。价值 Description issue-only分析源代码以仅检测问题。 source-only分析源代码以检测问题和已用技术。 full分析源代码以检测问题和已用技术,并列出依赖项。
例子
以下示例描述了一些配置:
示例一:你想要将应用作为 Linux 容器迁移到 AKS,并想要了解要修复的问题。 使用以下配置:
appcat: - target: - azure-aks os: - linux mode: issue-only示例二:想要将应用迁移到应用服务 Linux,并想要了解要解决的问题。 使用以下配置:
appcat: - target: - azure-appservice os: - linux mode: issue-only示例三:你想要将应用现代化为 JDK21,并想要了解要解决的问题。 使用以下配置:
appcat: - capability: - openjdk21 mode: issue-only
工具运行评估后,交互式仪表板会自动打开,提供全面的分析结果。 配置多个 Azure 服务目标后,可以轻松地在它们之间切换,以比较迁移方法并查看特定于服务的建议。
解释评估报告
评估报告提供全面的分析结果,可帮助你了解应用程序的 Azure 迁移和现代化准备情况。 本部分将指导你完成报表结构,并帮助你解释结果以做出明智的迁移决策。
报表结构概述
评估报告由几个关键部分组成:
- 应用程序信息:有关应用程序的基本信息,包括 Java 版本、框架、生成工具、项目结构和目标 Azure 服务。
- 问题摘要:按具有关键百分比的域分类的迁移问题的概述。
-
详细分析:详细报告组织为以下四个子节。
- 问题:提供需要注意的所有问题的简明摘要。
- 依赖项:显示应用程序中找到的所有 Java 打包的依赖项。
- 技术:显示按功能分组的所有嵌入式库,使你能够快速查看应用程序中使用的技术。
- 见解:显示文件详细信息和概况,帮助你了解识别出的技术。
问题
通过选择“ 问题 ”选项卡来访问此部件。此选项卡提供了云就绪情况和 Java 升级的各个方面的分类问题列表,需要解决这些问题才能将应用程序成功迁移到 Azure。 下表描述了 域 和 关键性 值:
| 域名 | Description |
|---|---|
| 云就绪情况 | 评估应用依赖项以建议 Azure 服务并确保云原生就绪。 |
| Java 升级 | 标识用于版本升级的 JDK 和框架问题。 |
| 重要性 | Description |
|---|---|
| 必需 | 迁移到 Azure 时必须修复的问题。 |
| 潜在 | 可能影响迁移和需要评审的问题。 |
| 可选 | 影响较低的问题。 建议修复它们,但可选。 |
有关详细信息,可以通过选择标题来扩展每个报告的问题。 该报告提供以下信息:
- 事件发生的文件列表,以及受影响的代码行数。 如果该文件是 Java 源文件,则选择文件行号会将你定向到相应的源报表。
- 问题的详细说明。 此说明概述了问题,提供了任何已知解决方案,并引用了有关问题或解决方法的支持文档。
依赖关系
通过选择“ 依赖项 ”选项卡来访问此部件。此选项卡显示应用程序中找到的所有 Java 打包依赖项。
技术
通过选择“ 技术 ”选项卡来访问此部分。此选项卡列出了分析应用程序中按函数分组的技术出现次数。 此报表概述了应用程序中发现的技术,旨在帮助你快速了解每个应用程序的目的。
洞见
通过选择 “见解 ”选项卡来访问此部分。显示文件详细信息和信息,以帮助了解检测到的技术。
执行评估报告
有效的报表管理能够促进协作、保持评估历史记录,并与现有工作流进行集成。
导入评估报告
除了直接在 GitHub Copilot 应用现代化中运行评估,还可以导入评估报告。 报告可能来自 AppCAT CLI 结果,例如 report.json、GitHub Copilot 应用现代化导出报表或 Dr. Migrate 中的应用上下文文件。
若要将评估报告导入到 GitHub Copilot 应用现代化,请在评估部分选择“ 导入 ”或按 Ctrl+Shift+P ,然后搜索 导入评估报告。
导出评估报告
在评估仪表板中,可以查看 AppCAT 检测到的问题,并选择迁移解决方案来确定决策。 可以导出报表并将其与他人共享。 如果是这样,其他人不需要自行运行评估,并且可以导入报表并直接查看评估和迁移决策。
若要从 GitHub Copilot 应用现代化导出评估报告,请右键单击 “评估报告 ”,然后在评估部分选择“ 导出 ”,或按 Ctrl+Shift+P ,然后搜索 导出评估报告。
删除评估报告
如果不再需要报表,可以选择将其删除。
若要删除评估报告,请右键单击“ 评估报告 ”,然后选择“ 删除”。