Извлечение события Transact-SQL из файла трассировки с использованием C # - PullRequest
1 голос
/ 23 июня 2011

Мне нужно воспроизвести количество файлов трассировки, созданных в SQL Server 2005 по сравнению с 2008 г., и сравнить результаты каждого оператора. Это один из предложенных способов, чтобы миграция прошла нормально

В меню SQL Profiler я могу перейти

Файл / Экспорт / Извлечение событий SQL Server / Извлечение событий Transact-SQL

Создает красивый скрипт-файл, в котором все операторы T-SQL делятся на GO Я хотел бы получить тот же результат с помощью кода, поскольку мне нужно обработать около 140 файлов трассировки по 50 МБ каждый, и их количество может варьироваться.

Если я экспортирую файл трассировки в TraceTable для каждого SP, у меня будет около четырех записей

RPC: Starting

SP: Начиная

SP: Completed

RPC: завершено

В приведенной выше ситуации выведите две строки

Exec some_sp
GO

Я знаю, как читать файл трассировки, используя SMO, но мне снова приходится создавать довольно сложную логику, чтобы правильно связывать и объединять все события Start / Complete и ничего не пропустить.

Кто-нибудь знает, как добиться извлечения событий T-SQL с помощью SMO и C # и передать анализ tracefile в SMO и / или Profiler API?

...