9 个用于调试和监视 ASP.NET 应用程序的强大工具
已发表: 2021-12-13监视和调试是成功应用程序开发的重要因素。
ASP.NET 是一个基于 .NET 的开源框架。 开发人员使用 ASP.NET 使用 CSS、HTML 和 JavaScript 构建网站、应用程序和服务。 他们甚至编写允许 JSON 或 XML 与连接设备(包括移动设备)通信的 Web API。
可以使用 SignalR 库增强 ASP.NET 功能。 SignalR 使用基于 HTML5 的 WebSockets API 和其他 API 轻松建立服务器和客户端之间的动态多路通信。
Microsoft 还提供了其他框架来进一步增强 ASP.NET 的功能,包括动态数据、数据应用程序框架、AJAX 功能和用于构建 Web 应用程序的 MVC(模型-视图-控制器)框架。
需要调试 ASP.NET 应用程序
在设计开发过程或程序开发生命周期(PDLC)中,必然会出现错误。 必须尽早发现并纠正这些错误,以最大限度地减少工时并避免以后出现重大开发瓶颈。
在 PDLC 中查找和纠正逻辑和句法错误的过程称为调试。
调试过程是程序员或开发人员向 ASP.NET 应用程序添加断点的地方。 该断点用于停止正在运行的程序的执行,以逐步检查程序的正确性。 它可以帮助开发人员在最终确定或修复代码之前分析代码部分。
ASP.NET 应用程序监控需求
ASP.NET 应用程序监视活动确保应用程序按照定义的指标工作,如果出现困难或错误,开发人员应该在用户体验之前立即相互了解。
监控事件对于维护应用程序的运行时间并在发生故障时及时修复至关重要。 监视 ASP.NET 应用程序有几个原因,例如:
- 检查网站的可用性和使用情况
- 每次页面加载时应用程序都会抛出异常
- 应用程序运行正常,但后端的发票或流程未运行
- 应用程序可以运行其他进程,这会消耗资源并减慢主进程
对于 SMB(中小型企业)和大型企业来说,监控 ASP.NET 应用程序响应、在线可用性、客户响应、后端流程等至关重要,以确保最佳的最终用户体验并确保更好的业务成果。
至少,公司需要知道应用程序是否在线以及它在高级别上是如何工作的。 网站是快还是慢? 客户满意吗? 这是一个您必须始终回答和监控的关键问题。
在下面的小节中,我们将讨论用于调试和监视 ASP.NET 应用程序的工具。
新遗物
New Relic 提供了 .NET Framework 和 .NET 核心以及除 Microsoft 之外的其他语言和组件的可见性。 该软件有助于识别应用程序和服务中的瓶颈,并在客户体验之前对其进行修复。
它是一种适应性强的软件,可监控在云中的数据中心运行的应用程序,以及来自 Amazon、Microsoft Azure、Amazon 的 Elastic Cloud 等的 Web 服务。
它的动态程序分析诊断和解决生产阶段的问题。 其异常警告机制有助于在用户受到影响之前解决问题。
总体而言,New Relic 是一个完整的软件包,展示了整个 ASP.net 框架在应用程序中的实时监控、操作跟踪、警报、诊断和故障排除方面。
特征
- 代码实现前后性能对比
- 分布式应用程序和服务依赖项的服务图可视化
- 集中式仪表板可监控所有正在运行的应用程序和运行状况监控
- 收集实时数据以了解应用性能
该软件的透明性、可预测性和可负担性对中小型企业来说是显着的好处。 一位用户可以免费使用其基本功能。 每位额外用户和附加功能的起价为 99 美元。
管理引擎
ManageEngine的应用程序监控九次被Gartner评为魔力象限。 它提供对不同类型 Web 应用程序的性能和业务应用程序的关键用户体验的深入洞察,以便在最终用户受到影响之前识别和修复问题。
从编码序列到统一资源定位器 (URL),可以监控整个应用程序堆栈,跟踪性能问题和在发生重大崩溃之前修复的错误。
页面查看时间、下载时间、锁定时间等微型性能指标也可以从仪表板上的各个位置进行跟踪。 各种规模的组织都可以使用该软件来跟踪应用程序运行时间、监控实时性能并在用户性能受到影响之前解决瓶颈问题。
特征
- 跟踪和监控用户操作的响应时间和错误
- 识别导致用户体验不佳和用户对 Apdex 结果不满意的 Web 事务
- 使用瀑布图识别加载缓慢的组件
- 记录重要的网络路径并在几分钟内回放
除了 .NET 框架,它还可以用于各种类型的 Web 应用程序,包括 Java、NodeJS、Ruby in Rails 和 PHP。 该软件可免费使用 30 天,之后可根据要求提供年度和永久许可版本的价格。
哨兵
Sentry 是最简单、使用最广泛的 ASP.NET 错误和性能监控软件之一,适用于小型到大型企业。 它被全球 80,000 个组织使用,包括 Microsoft、Disney、Cloudfare、Reddit、Github 等。
可以监控整个应用程序堆栈,包括文件名和行号。 所有异常,包括调试日志、网络查询、数据库查询、过去的错误,都可以过滤和分组以供分析。
它为异常创建自定义环境标签的独特能力有助于对应用程序、业务问题和用户错误进行分类。 ASP.NET 异常处理基于特定参数,例如每个问题的 HTTP 请求、工作流阶段和主机名。
特征
- 分布式端到端跟踪以发现不正确和正确的 API 调用
- 通过自动向连接的所有者/团队发送电子邮件,有效地处理错误并修复 ASP.NET 错误
- 能够按版本合并重复的错误并确定是否对未来版本有影响
它的免费版本可供开发人员用于基本性能监控。 它的起价为每月 26 美元。
点追踪
DotTrace Profiler 可帮助企业发现所有类型的 .net 应用程序中的性能瓶颈,包括桌面应用程序、Windows Communication Foundation 和 Windows 通用平台服务、托管在 IIS Web 服务器上的 ASP.NET 应用程序、单元测试、Mono 和 Unity 应用程序。
它的独特之处之一是它允许即时分析代码中的任何静态方法,这有助于在编码后立即分析每段代码。 无需构建解决方案、在分析器下运行它或运行运行新代码的部署脚本。

可以跟踪所有 SQL 链接以识别慢速 SQL 查询和性能统计信息。 这可以与运行应用程序相关联,以调查生产环境中的性能问题。
特征
- 在一处快速分析异步代码。
- 无需安装即可允许远程配置文件应用程序。
- 分析缓慢传入的 HTTP 请求以确定确切原因
- 通过基于时间调整重新计算快照中所有功能的时间来估计性能改进
DotTrace 提供了一个专用的 TeamCity 插件,可用于分析 CI 服务器集成测试并防止性能下降。 Dot trace 软件是 dotUltimate 软件包的一部分,包括六个附加工具。 DotUltimate 第一年每位用户的费用为 399 美元。
动态追踪
Dynatrace 是一个完整的 .NET 包,用于监控浏览器应用程序、IIS、数据库、服务和活动。 它使用专有的 PurePath 技术来捕获每个级别的每个事务的时间和上下文代码级别,而不会在 .NET 应用程序环境中出现间隙或盲点。
预配置的仪表板监控所有实时性能指标,包括单个事务、SQL 语句、代码级别等。 它显示了各种错误跟踪指标,如垃圾收集、Web 请求大小、活动和空闲线程、.NET 内存、重新启动、错误率、带宽等。
特征
- 可以观察到性能指标,例如 CPU 和内存使用情况、网络流量、TCP 重传。
- 其反向跟踪功能有助于了解数据库表达式对用户体验的影响。
- 自动识别和映射 .NET 应用程序中的所有应用程序和业务事务流。
- 可以跟踪 Web 服务器性能指标,例如进程、流量和查询。
全栈监控软件的成本为 69 美元。 如果您正在寻找一个特定的模块,它们有不同的价格结构。
应用动力学
AppDynamics 平台被世界知名的网络公司 Cisco 收购。 该软件为监控和管理 .NET 应用程序的性能提供了一个完整的解决方案。
它具有业内最具扩展性的设计。 它支持几乎所有 .NET 监控框架,包括 ADO、ASP、IIS、异步监控、独立应用程序、Windows 服务、Azure、Sharepoint 服务器、远程服务、MVC5 等等。
它有一个专门的业务事务管理委员会,可以监控和跟踪业务事务的全部效率,包括事务状态、重要统计数据(如每分钟调用次数、慢速事务等等)。
它显示了详细的指标,例如 ASP.NET 事务恢复代码执行时间。
特征
- 使用 ASP.NET 快速分析和排除故障的慢速或待处理事务的自动快照
- 性能统计的图形表示
- 其快速组装机制允许快速部署
该软件附带一个为期 15 天的测试阶段。 定价结构基于 CPU 内核,基础设施监控版的起价为每月 6 美元。 它还有其他三个版本:Premium(60 美元/m)、Enterprise(90 美元/m)和实时用户监控(每 1000 个令牌 0.06/m)。
ANTS 性能分析器
ANTS Performance Profiler 旨在发现 .NET 标准和 .NET 核心以及第三方框架、SQL 查询等中的性能问题。 它用于桌面应用程序、ASP.NET 应用程序和 ASP.NET 模型-视图-控制器。
该软件为 .NET 代码和数据库查询提供完整的 ASP.NET 性能数据。 其准确的诊断允许深入到慢行以发现问题。
它的调用树结构识别并直接显示昂贵的方法、数据库查询和 Web 查询,以解决缓慢的活动。 专业版支持两个主要数据库——SQL 和 Oracle——来测试 .NET 代码查询数据库的效率。
特征
- 当应用程序有磁盘活动时提供广泛的 I/O 性能
- 跟踪传出的 HTTP 请求以找出导致请求的原因
- 将每行时间与 SQL 查询相结合,找出慢查询
- 监控 .NET 或 ASP.NET 应用程序的 CPU 特定性能,这样您就可以只关注重要的数据
试用期为 14 天。 该软件有 2 个版本:标准版和专业版。 标准定价为每位用户 545 美元起。
回溯
Stackify Retrace 是一个易于使用的基于 SaaS 的软件,用于监控 ASP.NET 和 Java 应用程序。 它提供完整的端到端解决方案,包括应用程序监控、事务跟踪、指标记录、错误和报告以及强大的警报。
其内部设计的应用程序“应用程序评分”提供详细的详细信息,然后是 Apdex 评分。 仪表板提供有关可用于密切监视应用程序的所有指标的信息,包括最佳 Web 查询、SQL 查询性能、慢速 Web 查询等。
它的 Web 平台根据 CPU 和内存使用情况、与每分钟关键事务相关的信号、每分钟错误、满意度分数等方面显示服务器和应用程序性能。
特征
- 使用任何持续集成/持续交付 (CI/CD) 工具自动跟踪部署
- 能够快速识别性能或错误率的变化
- 可以识别 Web 请求处理代码需要多长时间
- 快速修复错误并识别优化代码的方法
该软件可免费使用 14 天。 预生产成本为 10 美元/月,生产成本为 25 美元/月。
MiniProfiler
MiniProfiler 是一个面向 .NET、ASP.NET、ASP.NET Core 和 ASP.NET MVC 的开源平台,由 Stack Overflow 团队的成员创建。
MiniProfiler 通过跟踪处理应用程序的每个部分所需的时间以及处理数据库请求所花费的时间来帮助调试和优化每个页面的性能。
该平台用于找出导致延迟的应用程序区域的哪一部分,以便开发人员可以查看瓶颈并进行必要的修正,并使应用程序达到所需的速度。
它的最佳功能包括存储、调用堆栈和数据库配置文件。
结论
创建一个健壮的应用程序是一项复杂的活动,需要花费大量的时间来完成复杂的编码,包括 HTML、CSS 和 JS。 构建应用程序涉及映射实体、各种库、数据库连接和服务器响应时间等等。
在此过程中,很难了解导致应用程序变慢的确切原因,因此上述工具和软件有助于使该过程在调试、监控和优化应用程序性能方面更容易。
我们希望这篇文章能帮助您调试和优化 ASP.NET 应用程序的性能。 您可能也有兴趣了解 ASP.NET 托管平台。