用于实时监控 ASP.NET Web 应用程序的工具和方法?
-
06-07-2019 - |
题
我认为许多开发人员都知道当用户告诉他们这一点时那种不舒服的感觉 “应用程序(再次)缓慢。”
在复杂的 Web 应用程序中,可能有 许多可能的原因 对于(感知到的)性能下降:数据库响应缓慢、带宽问题、缓存不良等。当然,有些问题在开发或登台环境中永远不会发生。
现在我的问题是:
是否有一套工具和/或方法可以提供 IIS/ASP.NET/SQL Server 生产系统上的全面“实时”状态 以视觉方式(不仅仅是性能计数器):
- 当前 HTTP 请求(例如最近 n 分钟)
- 异常/超时
- 带宽数据
- 打开的数据库连接/数据库调用的数量
- ...
主要目标是一眼就能看出(或仔细观察后)是什么问题导致了性能问题。
解决方案
我认为您正在寻找的软件类别是“.net profiler”或“.net tracer”。您可能会考虑的此类工具之一是 JetBrains 点跟踪. 。它为您提供运行时堆栈跟踪和指示可能瓶颈的计数器数组。
其他提示
我跟着 乌里格的建议 并发现 这个软件叫SmartInspect.
有人知道这个日志/监控工具吗?它似乎是实时控制台和开发人员库的组合。
CLR 4.5 将提供一些新功能,帮助您实时监控 ASP.NET 性能 - 无需重新启动应用程序。基本上,您可以重新 JIT 代码以在其中包含一些监视挂钩,然后检查在类/方法等中花费的时间。
我确信 dotTrace 和其他分析工具会自动利用这一点,但值得一试: C9 - 与 David Broman 一起深入了解 Re-JIT
不隶属于 StackOverflow