Какие API используются в SQL Profiler? - PullRequest
3 голосов
/ 27 апреля 2010

SQL Server Profiler отображает живой поток команд, выполняемых для экземпляра SQL-сервера. Какие API-интерфейсы используются для сбора этих данных?

Справочная информация: мне нужно написать небольшую утилиту (на C ++), которая отслеживает команды SQL, выданные отдельным приложением.

Ответы [ 3 ]

1 голос
/ 27 апреля 2010

Здесь, в Блоге команды разработчиков API - это быстрая C # (должна быть легко конвертируемая в c ++) программа, которая подключается к SQL Server и показывает текст всех начальных пакетов в реальном времени, так как запросы приход на SQL Server.

например. Фрагмент кода по ссылке

Console.WriteLine("Event : " + trace["EventClass"]);
Console.WriteLine("SPID  : " + trace["SPID"]);
Console.WriteLine("Login : " + trace["SessionLoginName"]);
Console.WriteLine("Object: " + trace["ObjectName"]);
Console.WriteLine("Text  : " + trace["TextData"]);

Как уже упоминал Алекс, вам нужно будет использовать TraceServer API.

1 голос
/ 16 июня 2011

В этом блоге рассказывается об объекте Trae Management (TMO) и о том, как его использовать.

Удобный инструмент для профилирования, использующий эту TMO, можно найти по адресу ЗДЕСЬ

1 голос
/ 27 апреля 2010

Я не знаю, так ли это делает Profiler, но они выставляются через TraceServer API.

...