我试存储程序,现在我对什么感兴趣跑什么样的顺序及其中哪些参数而不是如何快速的东西跑什么可能偷偷溜之间并导致经济放缓。

因此,我捕捉到一个几分钟价值的痕迹。问题是,有太多的东西,我需要缩小。如果我这样做 File -> Save As, 我得到以下选择:

  • 跟踪文件...
  • 跟踪模板...
  • 跟踪表...
  • 跟踪XML文件...
  • 跟踪XML文件的重播...

现在,这些都是体面的选择,但是我真正想要的是一个表格形式,如CSV。我认为逗号在SP跟踪可能会搞砸了的CSV格式。我会很乐意使用其他事,比如 || 作为一个界定符。

一旦我有表格的格式,我可以过滤下使用 grep, 等等。然后轻易地处理它与蟒蛇看看确切的事情我想要的。我开始分析在XML文件的脚本,但发现自己的消费太多时间在跟踪 XML 文件格式(有没有用 lxml 图书馆之前)。

所以...是否有一个更简单的方法?至少我可以复制到Excel不知?

有帮助吗?

解决方案

如果你把它保存入一个跟踪表;你可以得到一个表中的数据在SQL服务器,这会让你操纵你的心内容;其中包括倾倒出来CSV如果仍需要。该案文列的数据是充分的代表在表中。


如果你选择 保存跟踪表.你会被提名的表格和数据库。可以说,你叫它ProfilerTemp在数据库头开始。

进入这些;你可以查询使用表

select * from scratch.dbo.ProfilerTemp

你会看到的一切都在跟踪窗口在表中。如果你没有过滤下降到仅存储的过程和想要的只是他们的选择

Select textdata from [Scratch].[dbo].[ProfilerTemp] 
  where eventclass = 10 
  And textdata like 'exec %' 
  and not cast(TextData as nvarchar(max))= 'exec sp_reset_connection'

这个筛选出的非程序电话和任何连接的重置。你可能需要添加更多的过滤器,这取决于你们试图要做。

如果你想要这个作为一个文本的文件;选择查询的结果文件和运行查询。这将促进该文件的名称和给你的参数的文本为文本的文件。

其他提示

TL博士:复制成一个文本编辑器、手准备,然后再贴到Excel。

我有很少的经验SQL服务器,所以我不知道如果这会为他人工作,但它没有为我说:

  • 选择所需的行SQL Server分析器。Ctrl+C,以复制。
  • 粘贴到一个普通的文本编辑器,可以不经常表达的搜索和替代(例如记事本++在我的情况)。
  • Regex替换 (N'(''')?[^']*?)\r\n(([^']*?)\r\n)?(([^']*?)\r\n)?$1 $4 $6
    • 这将清除所有内容的行SQL脚本。
    • 保持这样做"替换所",直到有更多的结果。
  • Regex替换 (Batch(Starting|Completed)[^\\]*?)\r\n$1
    • 这将清除内容的行从更SQL的东西。再次,保持取代,直到没有结果。
  • Regex替换 \r\nsetset
    • 这将清除所有内容的行审计的登录的脚本
  • 你可能需要做更多的替换你的想法。
  • 粘贴到excel中使用的"文本进口导"。 使用标签的deliminator.
  • 排序第一栏中,删除任何无益的行(例如"审计的登录"在我的情况)。你可能还需要手动将一些数据在列(例如"EntityFramework"数据在我的情况)

我有一堆SQL Profiler跟踪文件,其中包含的僵局跟踪事件,我需要来分析。最后我们转换到一个单一的XML文件的使用SQL探查,然后阅读,XML文件的蟒蛇,使用 lxmlpandas 库。

作为数据最终在一个大熊猫 Dataframe, 你可以很容易地转换为CSV、Excel...或分析它在Python(如果你熟悉的大熊猫).

脚本是可以作为一个 要点.这是专门用于僵局跟踪文件,作为我没有其他任何痕迹。换句话说,你可能需要调整它一点点为你的目的。不要担心,如果XML文件是大(几100德);脚本用途 iterparse(), ,这意味着该文件不会被读入存储,只有相关要素将被抓获。E.g。一个 xdl 文件的加利福尼亚州。220MB是分析小于13秒。

节省的跟踪文件作为XML(xdl 扩展):

Extract

确保你的选择 所有事件中的一个单一的文件.

Save

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top