【问题标题】:Is there any way I can get .net stack traces in Sql Profiler, or a similar tool?有什么方法可以在 Sql Profiler 或类似工具中获取 .net 堆栈跟踪?
【发布时间】:2010-09-17 10:19:57
【问题描述】:

在我之前的工作中,我设计并帮助构建了一个运行时(生产)Profiler tool,除了其他很酷的功能之外,它还能够为我执行的每个 SQL 语句提供 .Net 堆栈跟踪。将其视为类固醇上的 SQL-Server Profiler。因此,您不仅可以查看 SQL 语句和持续时间,还可以获得 SQL 执行的上下文。在开发以数据库为中心的应用程序时,我发现这些信息是天赐良机。

问题是,由于这是我以前的公司开发的,已被赛门铁克收购,虽然该工具仍然可以下载,但很不清楚许可是什么,也不是 Symnatec 销售的 SKU。

我想知道是否有人知道任何类似的工具可以为我的 SQL 语句执行提供堆栈跟踪?

alt screenshot http://img151.imageshack.us/img151/4357/profiler1jz3.gif

这仍未得到答复,ANTS 等人不这样做,考虑只是回答“否”并接受它。

【问题讨论】:

    标签: c# .net sql-server profiling profiler


    【解决方案1】:

    我不确定它是否能完全满足您的需求,但我为 .Net 找到的最佳分析工具是 ANTS Profiler,如果我记得它会显示 SQL 以及所有 .net 调用。

    【讨论】:

      【解决方案2】:

      我们最近启动了一个名为dynaTrace 的工具。有一个工作站版本可以在一个机器上使用,还有一个服务器/代理版本可以在多个机器上运行。

      基本上,您可以针对特定应用程序(或 IIS)设置该工具。之后,它将收集对其进行检测的方法调用。在您的场景中,您可能会针对整个命名空间进行检测并获取所有内容。

      基本上,它会通过使用 IL 注入来跟踪每个方法调用。它通过检测 ADO.Net 来获取数据库调用,包括 SP 中的绑定变量。它显然也可以跨 Web 服务调用进行跟踪。

      这很酷,因为您可以查看特定方法,查看调用该方法的所有路径,或查看对方法的所有调用。您可以查看特定的数据库调用,并查看该调用的所有代码路径。

      这很酷。

      【讨论】:

        【解决方案3】:

        我在这里发布了一个答案,它汇集了来自几篇帖子的信息,以及一个可用作 MySQL 的穷人查询监视器的应用程序:

        How can I view live MySQL queries?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-04-11
          • 1970-01-01
          • 2016-09-03
          • 1970-01-01
          • 2010-10-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多