原文 | Olia Gavrysh

翻译 | 郑子铭

我们很高兴地宣布发布一款新工具,可以帮助您将本地 .NET 应用程序迁移到 Azure。

适用于 .NET 的 Azure Migrate 应用程序和代码评估工具(简称 AppCAT)允许你评估应用程序的 .NET 源代码、配置和二进制文件,以识别将应用程序迁移到 Azure 时的潜在问题和机会。它有助于发现应用程序在移植到 Azure 时可能遇到的任何问题,并通过建议现代的云原生解决方案来提高性能、可扩展性和安全性。

运行分析后,该工具将向您显示一份报告,其中包含您需要检查或更改的所有可能事项,以确保您的应用程序在从本地迁移到 Azure 后能够正常工作。

AppCAT 通过对代码及其依赖项进行静态代码分析来发现应用程序技术的使用情况。它还允许您跳转到需要您注意的行,解决问题并将其标记为已修复,保存问题的当前状态和报告,以便您或您的同事可以准确地从您上次停下的地方开始并有效协作。该工具将为您提供修复每个问题所需的工作量的估计,以及对应用程序和整个项目的组件的估计。它将提供有关如何解决问题并将您连接到 Microsoft 文档的详细指导。

AppCAT 有两种“风格”——作为 Visual Studio 扩展和作为 .NET CLI 工具。

安装 Visual Studio 扩展

先决条件

  • Windows操作系统
  • Visual Studio 2022 版本 17.1 或更高版本

安装步骤

使用以下步骤从 Visual Studio 内部安装它。或者,您可以从 Visual Studio Marketplace 下载并安装扩展。

  1. 打开 Visual Studio 后,按“扩展”>“管理扩展”菜单项,这将打开“管理扩展”窗口。

  1. 在“管理扩展”窗口中,输入“ Azure迁移”到搜索输入框中。

  1. 选择“Azure Migrate 应用程序和代码评估”项,然后选择“下载”。
  2. 下载扩展后,关闭 Visual Studio。这将开始安装扩展。
  3. 在 VSIX 安装程序对话框中,选择“修改”并按照说明安装扩展。

安装 CLI 工具

先决条件

  • .NET SDK

安装步骤

要安装该工具,请在 CLI 中运行以下命令:

dotnet tool install -g dotnet-appcat

要更新该工具,请在 CLI 中运行以下命令:

dotnet tool update -g dotnet-appcat

请注意,如果您配置了其他 NuGet 源,则安装此工具可能会失败。使用 --ignore-failed-sources 参数将这些失败视为警告而不是错误。

dotnet tool install -g --ignore-failed-sources dotnet-appcat

使用 Visual Studio 分析应用程序

安装 Visual Studio 扩展后,您就可以在 Visual Studio 中分析您的应用程序了。您可以通过右键单击“解决方案资源管理器”窗口中的任何项目或解决方案并选择“重新平台到 Azure”来执行此操作。

该工具的窗口将打开,供您创建新报告或打开现有报告。

如果您选择创建新报告,则在下一个屏幕上您可以选择要分析解决方案中的哪些项目。将为您预先选择 Web 项目,您可以通过选中或取消选中项目旁边的框来更改选择。当该工具运行时,它还会分析您所选项目的依赖关系。

在下一个屏幕上,您可以选择是否只想分析源代码和设置,或者也分析代码所具有的所有二进制依赖项。

单击“分析”按钮并且该工具完成分析后,您将在仪表板中看到结果,该结果可以以不同格式(HTML、CSV 和 JSON)保存。

阅读此分步指南,了解有关 Visual Studio 体验的详细说明。

使用 .NET CLI 分析应用程序

安装 CLI 工具后,您就可以在 CLI 中分析您的应用程序了。在 CLI 中运行命令:

appcat analyze <APPLICATION_PATH>

您可以为该工具将生成的报告文件指定路径和格式(.html、.json 或 .csv):

appcat analyze <APPLICATION_PATH> --report MyAppReport --serializer html

阅读此分步指南,了解有关 CLI 体验的详细说明。

解释结果

CLI 工具和 Visual Studio 都允许您以 HTML、CSV 和 JSON 格式保存分析结果。 HTML 报告看起来与分析完成后您将在 Visual Studio 中看到的仪表板非常相似。

该报告将向您显示有关分析的项目数量、问题和事件的信息,以及对每个事件、问题和项目需要花费多少努力来修复的评估。事件按类别和严重性分组。有不同的视图可让您查看事件、获取有关如何修复事件的帮助、跳转到发生这些事件的代码等等。

阅读此解释结果指南,了解报告不同部分的详细说明以及如何理解和解释数据。

支持的语言

.NET 的应用程序和代码评估可以分析用以下语言编写的项目:

  • C#
  • 视觉基础

支持的项目类型

它会分析以下项目类型中的代码:

  • ASP.NET 和 ASP.NET Core
  • 类库

支持的 .NET 框架

所有 .NET 框架(.NET Framework、.NET Core、.NET 5+)。

支持的 Azure 目标

当前应用程序确定了迁移到 Azure 应用服务、AKS 和 Azure 容器应用程序的潜在问题。将来,该工具可能能够明确设置目标并分别过滤每个目标的确切问题和建议。

下一步是什么

接下来,我们将重点关注为该工具注入 AI 功能并添加与 Copilot 的集成,以便您可以获得有关整体迁移以及解决特定问题的帮助。

我们目前正在开发的另一项重要功能是根据您选择的 Azure 目标为您提供更有针对性的评估。我们计划添加在报告之前设置目标并根据该目标构建报告的功能。

有用的材料

我们有很多材料可以帮助您完成升级过程:

  • AppCAT文档
  • Visual Studio 的 AppCAT 安装
  • AppCAT CLI 安装

给我们反馈!

请通过 Visual Studio 反馈渠道向我们提供反馈或报告任何问题,方法是选择“帮助”|“在 Visual Studio 中发送反馈。请在标题中提及“AppCAT”,以便更快地将其发送给我的团队。我们感谢您的意见,并希望为您构建合适的工具!

原文链接

Announcing the Azure Migrate application and code assessment tool for .NET

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

如有任何疑问,请与我联系 (MingsonZheng@outlook.com)

【译】宣布推出适用于 .NET 的 Azure Migrate 应用程序和代码评估工具的更多相关文章

  1. 火眼推出Windows免费渗透测试套件,包含140多款工具

    火眼推出Windows免费渗透测试套件,包含140多款工具 2019年3月28日,火眼发布了一个包含超过140个开源Windows渗透工具包,红队渗透测试员和蓝队防御人员均拥有了顶级侦察与漏洞利用程序 ...

  2. 注册Azure AD 应用程序

    作者:陈希章 发表于2017年3月22日 在此前的文章中,我给大家介绍了分别用Graph 浏览器以及第三方工具(POSTMAN)快速体验Microsoft Graph的功能,其中有一个重要的环节就是, ...

  3. Azure编程笔记(3):用Fiddler调试Azure的应用程序

     内容提要 Azure的服务是通过RESTfulAPI提供的. 尽管Azure针对非常多编程语言都提供了SDK.但这些SDK也仅仅是RESTfulAPI的一层封装. 在调用SDK或者RESTful ...

  4. Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

    一,引言 对于今天所分析的 SonarQube,首先我们得了解什么是 SonarQube ? SonarQube 又能帮我们做什么?我们是否在项目开发的过程中遇到人为 Review 代码审核规范?带着 ...

  5. 微软推出首个Microsoft Azure Stack技术预览版

    Mike Neil,微软公司企业云副总裁 怀着对于提高业务灵活性.加速创新的期待,很多企业正在向云平台迅速迁移.伴随着这样的趋势,我们也见证了微软智能云Azure业务在全球市场的快速增长--每个月近1 ...

  6. 微软开放技术发布针对 Mac 和 Linux 的更新版 Azure Node.JS SDK 和命令行工具

    发布于 2013-12-04 作者 Eduard Koller 这次为我们使用Linux 的朋友带来了更多关于部署云上虚拟机的消息.今天,微软开放技术有限公司 (MS Open Tech),想与大家分 ...

  7. 【译】第六篇 SQL Server安全执行上下文和代码签名

    本篇文章是SQL Server安全系列的第六篇,详细内容请参考原文. SQL Server决定主体是否有必要的执行代码权限的根本途径是其执行上下文规则.这一切都可能复杂一个主体有执行代码的权限,但是却 ...

  8. Azure CLI 2.0-Azure新命令行工具介绍

    Azure CLI 2.0 是 Azure 的新命令行体验,用于管理 Azure 资源. 可以将其安装在 macOS.Linux 和 Windows 上,然后从命令行运行它. Azure CLI 2. ...

  9. 适用于OpenGL离屏渲染上下文的初始化代码

    说明 近期做图像算法.须要用到shader对图像进行处理,用glut会有窗体,不适合写成UT測试用例,须要创建一个无窗体的OpenGL上下文. 代码 这部分代码事实上是參考 Android的Skia ...

  10. azure k8s netcore 程序初次部署

    以下都是我在2018年12月份做的实验,今天才发布出来. 念想 首先是了解一些关于K8s的一些基础概念,推荐查看一下这个链接,非常适合入门k8s.是因为K8S的环境搭建比较复杂(最主要是懒),其实也有 ...

随机推荐

  1. MySQL 查询索引失效及如何进行索引优化

    本文为博主原创,未经允许不得转载: 我们都知道创建索引的目的是快速从整体集合中选择性地读取满足条件的一部分集合.mysql中一张表是可以支持多个索引的.但是,你写sql语句的时候,并没有主动指定使用哪 ...

  2. Object.defineProperty()实现双向数据绑定

    <div id="app"> <input type="text" name="txt" id="txt&quo ...

  3. [转帖]MySQL运维实战(2)MySQL用户和权限管理

    https://segmentfault.com/a/1190000044514403 作者:俊达 引言 MySQL数据库系统,拥有强大的控制系统功能,可以为不同用户分配特定的权限,这对于运维来说至关 ...

  4. Docker下的资源限制问题

    Docker下的资源限制问题 问题背景 公司某产品出现了一个奇怪的OOM 错误提示. 问题现象是 前台产品 提示 OOM cannot create native thread 但是同时查看 机器的资 ...

  5. [转帖]Linux 内核的 4 大 IO 调度算法

    https://cloud.tencent.com/developer/article/1615744 Linux 内核包含4个IO调度器,分别是 Noop IO scheduler.Anticipa ...

  6. [转帖]TiDB Control 使用说明

    https://docs.pingcap.com/zh/tidb/stable/tidb-control TiDB Control 是 TiDB 的命令行工具,用于获取 TiDB 状态信息,多用于调试 ...

  7. [转帖]使用 TiUP cluster 在单机上安装TiDB

    https://zhuanlan.zhihu.com/p/369414808   TiUP 是 TiDB 4.0 版本引入的集群运维工具,TiUP cluster 是 TiUP 提供的使用 Golan ...

  8. [转帖]JVM NativeMemoryTracking ;jcmd process_id VM.native_memory;Native memory tracking is not enabled

    目录 一.Native Memory Tracking (NMT) 是Hotspot VM用来分析VM内部内存使用情况的一个功能.我们可以利用jcmd(jdk自带)这个工具来访问NMT的数据. 1.N ...

  9. [转帖]技术派-汇编语言指令集(intel X86系列)

    针对汇编语言指令集(intel X86系列8086/80186/80286/80386/80486) AAA - Ascii Adjust for Addition        AAD - Asci ...

  10. React中事件的绑定

    事件绑定 语法:on +事件名= { ()=>{ do something }} <!-- 点击事件 --> onClick={ () => { } } 注意的是:React采 ...