Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Таблица трассировки  [new]
Алексаша
Member

Откуда: Левый берег
Сообщений: 371
MS SQL SERVER 2014

Здравствуйте.

Можно ли скриптом сделать трассировку с загрузкой результатов в таблицу. Через профайлер можно, но при экспорте скрипта предложенный скрипт как для загрузки в файл. На форуме натыкался на подобные темы и сделал вывод, что нельзя. Но темы старые. Может что изменилось ...
26 окт 17, 17:24    [20903475]     Ответить | Цитировать Сообщить модератору
 Re: Таблица трассировки  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5112
Алексаша
Можно ли скриптом сделать трассировку с загрузкой результатов в таблицу.
нет,
посмотрите в сторону Extended Events
26 окт 17, 18:05    [20903700]     Ответить | Цитировать Сообщить модератору
 Re: Таблица трассировки  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7399
Дедушка,

откройте секрет, как extended events умеет сохранять данные в таблицу?
26 окт 17, 18:12    [20903732]     Ответить | Цитировать Сообщить модератору
 Re: Таблица трассировки  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Владислав Колосов,

судя по всему этим

https://docs.microsoft.com/en-us/sql/relational-databases/system-functions/sys-fn-xe-file-target-read-file-transact-sql
26 окт 17, 18:17    [20903750]     Ответить | Цитировать Сообщить модератору
 Re: Таблица трассировки  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1172
Дедушка,

С чего это сразу нет?

declare @trc_id int
declare @tracename nvarchar(2048) = 'C:\temp\trc01'
declare @sql nvarchar(2048) = 'del /Q ' + @tracename +'.trc';

exec xp_cmdshell @sql

exec sp_trace_create @traceid = @trc_id OUTPUT,
            @options =  2 ,  
            @tracefile =  @tracename;


exec sp_trace_setevent  @traceid =@trc_id
          ,  @eventid =  42
          ,  @columnid =  34
          ,  @on = 1

exec sp_trace_setstatus @trc_id, 1

waitfor delay '00:00:05'

exec sp_trace_setstatus @trc_id, 0
exec sp_trace_setstatus @trc_id, 2

if object_id('tempdb..#tmp', N'U') is not null drop table #tmp
select * into #tmp from sys.fn_trace_gettable(@tracename+'.trc', default)

select * from #tmp
26 окт 17, 18:24    [20903783]     Ответить | Цитировать Сообщить модератору
 Re: Таблица трассировки  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5112
felix_ff
С чего это сразу нет?
с того, что fn_trace_gettable "will be removed in a future version"
26 окт 17, 21:12    [20904189]     Ответить | Цитировать Сообщить модератору
 Re: Таблица трассировки  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1172
Дедушка,

они хотят вообще выпилить саму trace в будущих версиях, но это не отменяет того факта что сейчас тот функционал о котором спрашивал ТС доступен.

кстати иногда меня аж гневно трясет от XEvents штука ужасно удобная, но вот какого хера они к примеру не воткнули классы GDR в пакет?

получается или только смотреть в строну audit или в сторону event notification, а аудит к примеру не ловит мать его за ногу client_host_name.
26 окт 17, 21:57    [20904279]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить