【App Service】在Azure App Service中分析.NET应用程序的性能的好帮手(Review Stack Traces)

简介: 【App Service】在Azure App Service中分析.NET应用程序的性能的好帮手(Review Stack Traces)

Azure App Service .NET Profiler

在App Service服务中,如果部署了.NET应用,平台有一个非常好的工具可以查看请求的性能分布及异常时的Stack Traces。

进入路径: App Service Azure Overview -->  Networking(网络) --> Troubleshoot(排除故障) --> Collect .NET Profiler Trace

在收集 Profiler 跟踪之前应了解的内容

  1. 启动探查器跟踪后,通过浏览到 Web 应用重现问题。
  2. 探查器跟踪将在 60 秒后自动停止。
  3. 如果启用了线程报告选项,则还将收集进程内线程的原始堆栈跟踪。
  4. 使用线程报告选项,您的应用程序可能会暂停几秒钟,直到所有线程都完成DUMP收集。
  5. Web 应用不会因运行探查器而重新启动。
  6. 探查器跟踪将有助于识别 ASP.NET 或 ASP.NET Core 应用程序中的问题。

 

在收集完Profiler Trace后,它会帮助自动分析并生产报告。点击查看报告链接,会对当前收集响应慢的请求进行耗时分析:Application Code,Platform 和 Network

Application Code :应用程序代码表示在执行应用程序代码时调用的处理程序或模块所花费的时间(例如 ManagedPipelineHandler),或者与为应用程序完成的任何显式配置(例如 RewriteModule)密切相关的时间。任何外部或第三方处理程序、模块都属于这一类。不属于本机 IIS 处理程序或模块的任何内容都归类为应用程序。

Platform :平台表示请求在 Azure 应用服务中预安装的核心本机模块或 IIS 处理程序(例如 DefautlDocumentModule、StaticFileHandler 等)中花费的时间。请求在这些模块中花费过多时间可能表示整体平台存在问题,因此可以联系 Microsoft 支持部门以获取更多详细信息。

Network :这表示从客户端读取请求实体正文所花费的时间,或将响应缓冲区刷新回客户端所花费的时间。等待从应用程序发出的外部出站网络调用(如数据库、缓存、外部 HTTP 请求等)所花费的时间不计算在内,而是分组在“应用程序代码”下。

 

参考文档:https://www.cnblogs.com/lulight/articles/18081286

 

相关文章
|
10天前
|
算法 Java 测试技术
使用 BenchmarkDotNet 对 .NET 代码进行性能基准测试
使用 BenchmarkDotNet 对 .NET 代码进行性能基准测试
40 13
|
19天前
|
API
【Azure Logic App】使用Logic App来定制Monitor Alert邮件内容遇见无法获取SearchResults的情况
Log search alert rules from API version 2020-05-01 use this payload type, which only supports common schema. Search results aren't embedded in the log search alerts payload when you use this version.
42 10
|
1月前
|
算法 Java 测试技术
Benchmark.NET:让 C# 测试程序性能变得既酷又简单
Benchmark.NET是一款专为 .NET 平台设计的性能基准测试框架,它可以帮助你测量代码的执行时间、内存使用情况等性能指标。它就像是你代码的 "健身教练",帮助你找到瓶颈,优化性能,让你的应用跑得更快、更稳!希望这个小教程能让你在追求高性能的路上越走越远,享受编程带来的无限乐趣!
93 13
|
2月前
|
开发框架 安全 .NET
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱。它不仅加速了应用开发进程,提升了开发质量和可靠性,还促进了创新和业务发展,培养了专业人才和技术社区,为软件开发和数字化转型做出了重要贡献。
36 5
|
2月前
|
传感器 人工智能 供应链
.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。
本文深入探讨了.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。通过企业级应用、Web应用及移动应用的创新案例,展示了.NET在各领域的广泛应用和巨大潜力。展望未来,.NET将与新兴技术深度融合,拓展跨平台开发,推动云原生应用发展,持续创新。
48 4
|
2月前
|
机器学习/深度学习 人工智能 Cloud Native
在数字化时代,.NET 技术凭借其跨平台兼容性、丰富的类库和工具集以及卓越的性能与效率,成为软件开发的重要平台
在数字化时代,.NET 技术凭借其跨平台兼容性、丰富的类库和工具集以及卓越的性能与效率,成为软件开发的重要平台。本文深入解析 .NET 的核心优势,探讨其在企业级应用、Web 开发及移动应用等领域的应用案例,并展望未来在人工智能、云原生等方面的发展趋势。
46 3
|
2月前
|
开发框架 安全 Java
.NET技术的独特魅力与优势,涵盖高效的开发体验、强大的性能表现、高度的可扩展性及丰富的生态系统等方面,展示了其在软件开发领域的核心竞争力
本文深入探讨了.NET技术的独特魅力与优势,涵盖高效的开发体验、强大的性能表现、高度的可扩展性及丰富的生态系统等方面,展示了其在软件开发领域的核心竞争力。.NET不仅支持跨平台开发,具备出色的安全性和稳定性,还能与多种技术无缝集成,为企业级应用提供全面支持。
37 3
|
2月前
|
缓存 容器 Perl
【Azure Container App】Container Apps 设置延迟删除 (terminationGracePeriodSeconds) 的解释
terminationGracePeriodSeconds : 这个参数的定义是从pod收到terminated signal到最终shutdown的最大时间,这段时间是给pod中的application 缓冲时间用来处理链接关闭,应用清理缓存的;并不是从idel 到 pod被shutdown之间的时间;且是最大时间,意味着如果application 已经gracefully shutdown,POD可能被提前terminated.
|
2月前
|
Java 开发工具 Windows
【Azure App Service】在App Service中调用Stroage SDK上传文件时遇见 System.OutOfMemoryException
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.