可以向我的应用程序添加 "offline profiling" 功能吗?
Possible to add "offline profiling" functionality to my application?
作为 Red Gate ANTS Performance Profiler 的长期用户,我目前正在寻找一种在非开发机器上进行分析的方法。
我们有相当大的 WinForms 应用程序用户群,该应用程序是用 .NET 4 编写的。
用户不时抱怨性能不佳。
由于我无法在每个客户的 PC 上购买和安装 ANTS,我正在考虑类似的事情:
- 向我使用 .NET Profiling API.
的应用程序添加一些魔法代码
- 在我的应用程序中提供一个开关以启用分析跟踪。
- 告诉用户激活开关。
- 让 API 记录性能 "events" 一段时间。
- 让客户把记录的日志寄给我。
- 在一些花哨的 GUI 中打开日志来分析热点。
我的问题:
是否可以通过某种方式使用 .NET 分析 API 来包含离线性能热点记录以便稍后分析?
更新 1:
我刚刚找到“dotTrace Perfomance API”,其中介绍了术语自我分析,这似乎正是我想要的形式。
正在查看文章……
是的,dotTrace API 似乎是最好的解决方案。
实际上,您可以使用与 JetBrains 用于 ReSharper 的方法相同的方法。 ReSharper 的帮助菜单中有选项 - Profile Visual Studio。这个菜单的作用是 运行 自我分析。当用户遇到减速时,JB 支持人员会要求他使用此菜单并重现该问题。然后将收集的性能快照发送到 JetBrains。
作为 Red Gate ANTS Performance Profiler 的长期用户,我目前正在寻找一种在非开发机器上进行分析的方法。
我们有相当大的 WinForms 应用程序用户群,该应用程序是用 .NET 4 编写的。
用户不时抱怨性能不佳。
由于我无法在每个客户的 PC 上购买和安装 ANTS,我正在考虑类似的事情:
- 向我使用 .NET Profiling API. 的应用程序添加一些魔法代码
- 在我的应用程序中提供一个开关以启用分析跟踪。
- 告诉用户激活开关。
- 让 API 记录性能 "events" 一段时间。
- 让客户把记录的日志寄给我。
- 在一些花哨的 GUI 中打开日志来分析热点。
我的问题:
是否可以通过某种方式使用 .NET 分析 API 来包含离线性能热点记录以便稍后分析?
更新 1:
我刚刚找到“dotTrace Perfomance API”,其中介绍了术语自我分析,这似乎正是我想要的形式。
正在查看文章……
是的,dotTrace API 似乎是最好的解决方案。 实际上,您可以使用与 JetBrains 用于 ReSharper 的方法相同的方法。 ReSharper 的帮助菜单中有选项 - Profile Visual Studio。这个菜单的作用是 运行 自我分析。当用户遇到减速时,JB 支持人员会要求他使用此菜单并重现该问题。然后将收集的性能快照发送到 JetBrains。